.p-dialog.session-timeout-dialog{border-radius:.75rem;overflow:hidden;min-width:20rem;max-width:28rem;width:100%}.session-timeout-dialog .p-dialog-header{border-bottom:1px solid var(--border)}body.session-timeout-overlay-active{overflow:hidden}.training-tour-modal-body>p+p{margin-top:.5rem}.training-tour-ring{position:fixed;z-index:1100;border-radius:14px;border:2px solid var(--primary-color, #0d6ea8);box-shadow:0 0 0 9999px #0009;pointer-events:none;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease;animation:training-tour-pulse 1.6s ease-in-out infinite}@keyframes training-tour-pulse{0%,to{border-color:var(--primary-color, #0d6ea8)}50%{border-color:#ffffffe5}}.training-tour-callout{position:fixed;z-index:1101;width:320px;padding:1rem;border-radius:10px;background:var(--surface-overlay, #fff);color:var(--text-color, #111);box-shadow:0 10px 30px #00000059}.training-tour-callout.is-top{transform:translateY(-100%)}.training-tour-arrow{position:absolute;width:12px;height:12px;background:var(--surface-overlay, #fff);transform:translate(-50%) rotate(45deg)}.training-tour-callout.is-bottom .training-tour-arrow{top:-6px}.training-tour-callout.is-top .training-tour-arrow{bottom:-6px}.training-tour-step-count{font-size:.75rem;letter-spacing:.04em;color:var(--text-color-secondary, #6b7280);margin-bottom:.25rem;font-variant-numeric:tabular-nums}.training-tour-callout-title{font-weight:600;margin-bottom:.375rem}.training-tour-callout-body{font-size:.875rem;line-height:1.45;color:var(--text-color-secondary, #6b7280)}.training-tour-callout-body+.training-tour-callout-body{margin-top:.5rem}.training-tour-actions{display:flex;align-items:center;justify-content:space-between;margin-top:.875rem}.training-tour-nav{display:flex;gap:.5rem}.training-tour-btn{font-size:.8125rem;padding:.3rem .75rem;border-radius:6px;border:1px solid var(--surface-border, #d1d5db);background:transparent;color:inherit;cursor:pointer}.training-tour-btn--primary{background:var(--primary-color, #0d6ea8);border-color:var(--primary-color, #0d6ea8);color:var(--primary-color-text, #fff)}.training-tour-skip{font-size:.8125rem;text-decoration:underline;color:var(--text-color-secondary, #6b7280);background:none;border:0;cursor:pointer;padding:0}@font-face{font-family:primeicons;font-display:block;src:url(/build/assets/primeicons-DMOk5skT.eot);src:url(/build/assets/primeicons-DMOk5skT.eot?#iefix) format("embedded-opentype"),url(/build/assets/primeicons-C6QP2o4f.woff2) format("woff2"),url(/build/assets/primeicons-WjwUDZjB.woff) format("woff"),url(/build/assets/primeicons-MpK4pl85.ttf) format("truetype"),url(/build/assets/primeicons-Dr5RGzOO.svg?#primeicons) format("svg");font-weight:400;font-style:normal}.pi{font-family:primeicons;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.pi:before{--webkit-backface-visibility:hidden;backface-visibility:hidden}.pi-fw{width:1.28571429em;text-align:center}.pi-spin{animation:fa-spin 2s infinite linear}@media(prefers-reduced-motion:reduce){.pi-spin{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(359deg)}}.pi-folder-plus:before{content:""}.pi-receipt:before{content:""}.pi-asterisk:before{content:""}.pi-face-smile:before{content:""}.pi-pinterest:before{content:""}.pi-expand:before{content:""}.pi-pen-to-square:before{content:""}.pi-wave-pulse:before{content:""}.pi-turkish-lira:before{content:""}.pi-spinner-dotted:before{content:""}.pi-crown:before{content:""}.pi-pause-circle:before{content:""}.pi-warehouse:before{content:""}.pi-objects-column:before{content:""}.pi-clipboard:before{content:""}.pi-play-circle:before{content:""}.pi-venus:before{content:""}.pi-cart-minus:before{content:""}.pi-file-plus:before{content:""}.pi-microchip:before{content:""}.pi-twitch:before{content:""}.pi-building-columns:before{content:""}.pi-file-check:before{content:""}.pi-microchip-ai:before{content:""}.pi-trophy:before{content:""}.pi-barcode:before{content:""}.pi-file-arrow-up:before{content:""}.pi-mars:before{content:""}.pi-tiktok:before{content:""}.pi-arrow-up-right-and-arrow-down-left-from-center:before{content:""}.pi-ethereum:before{content:""}.pi-list-check:before{content:""}.pi-thumbtack:before{content:""}.pi-arrow-down-left-and-arrow-up-right-to-center:before{content:""}.pi-equals:before{content:""}.pi-lightbulb:before{content:""}.pi-star-half:before{content:""}.pi-address-book:before{content:""}.pi-chart-scatter:before{content:""}.pi-indian-rupee:before{content:""}.pi-star-half-fill:before{content:""}.pi-cart-arrow-down:before{content:""}.pi-calendar-clock:before{content:""}.pi-sort-up-fill:before{content:""}.pi-sparkles:before{content:""}.pi-bullseye:before{content:""}.pi-sort-down-fill:before{content:""}.pi-graduation-cap:before{content:""}.pi-hammer:before{content:""}.pi-bell-slash:before{content:""}.pi-gauge:before{content:""}.pi-shop:before{content:""}.pi-headphones:before{content:""}.pi-eraser:before{content:""}.pi-stopwatch:before{content:""}.pi-verified:before{content:""}.pi-delete-left:before{content:""}.pi-hourglass:before{content:""}.pi-truck:before{content:""}.pi-wrench:before{content:""}.pi-microphone:before{content:""}.pi-megaphone:before{content:""}.pi-arrow-right-arrow-left:before{content:""}.pi-bitcoin:before{content:""}.pi-file-edit:before{content:""}.pi-language:before{content:""}.pi-file-export:before{content:""}.pi-file-import:before{content:""}.pi-file-word:before{content:""}.pi-gift:before{content:""}.pi-cart-plus:before{content:""}.pi-thumbs-down-fill:before{content:""}.pi-thumbs-up-fill:before{content:""}.pi-arrows-alt:before{content:""}.pi-calculator:before{content:""}.pi-sort-alt-slash:before{content:""}.pi-arrows-h:before{content:""}.pi-arrows-v:before{content:""}.pi-pound:before{content:""}.pi-prime:before{content:""}.pi-chart-pie:before{content:""}.pi-reddit:before{content:""}.pi-code:before{content:""}.pi-sync:before{content:""}.pi-shopping-bag:before{content:""}.pi-server:before{content:""}.pi-database:before{content:""}.pi-hashtag:before{content:""}.pi-bookmark-fill:before{content:""}.pi-filter-fill:before{content:""}.pi-heart-fill:before{content:""}.pi-flag-fill:before{content:""}.pi-circle:before{content:""}.pi-circle-fill:before{content:""}.pi-bolt:before{content:""}.pi-history:before{content:""}.pi-box:before{content:""}.pi-at:before{content:""}.pi-arrow-up-right:before{content:""}.pi-arrow-up-left:before{content:""}.pi-arrow-down-left:before{content:""}.pi-arrow-down-right:before{content:""}.pi-telegram:before{content:""}.pi-stop-circle:before{content:""}.pi-stop:before{content:""}.pi-whatsapp:before{content:""}.pi-building:before{content:""}.pi-qrcode:before{content:""}.pi-car:before{content:""}.pi-instagram:before{content:""}.pi-linkedin:before{content:""}.pi-send:before{content:""}.pi-slack:before{content:""}.pi-sun:before{content:""}.pi-moon:before{content:""}.pi-vimeo:before{content:""}.pi-youtube:before{content:""}.pi-flag:before{content:""}.pi-wallet:before{content:""}.pi-map:before{content:""}.pi-link:before{content:""}.pi-credit-card:before{content:""}.pi-discord:before{content:""}.pi-percentage:before{content:""}.pi-euro:before{content:""}.pi-book:before{content:""}.pi-shield:before{content:""}.pi-paypal:before{content:""}.pi-amazon:before{content:""}.pi-phone:before{content:""}.pi-filter-slash:before{content:""}.pi-facebook:before{content:""}.pi-github:before{content:""}.pi-twitter:before{content:""}.pi-step-backward-alt:before{content:""}.pi-step-forward-alt:before{content:""}.pi-forward:before{content:""}.pi-backward:before{content:""}.pi-fast-backward:before{content:""}.pi-fast-forward:before{content:""}.pi-pause:before{content:""}.pi-play:before{content:""}.pi-compass:before{content:""}.pi-id-card:before{content:""}.pi-ticket:before{content:""}.pi-file-o:before{content:""}.pi-reply:before{content:""}.pi-directions-alt:before{content:""}.pi-directions:before{content:""}.pi-thumbs-up:before{content:""}.pi-thumbs-down:before{content:""}.pi-sort-numeric-down-alt:before{content:""}.pi-sort-numeric-up-alt:before{content:""}.pi-sort-alpha-down-alt:before{content:""}.pi-sort-alpha-up-alt:before{content:""}.pi-sort-numeric-down:before{content:""}.pi-sort-numeric-up:before{content:""}.pi-sort-alpha-down:before{content:""}.pi-sort-alpha-up:before{content:""}.pi-sort-alt:before{content:""}.pi-sort-amount-up:before{content:""}.pi-sort-amount-down:before{content:""}.pi-sort-amount-down-alt:before{content:""}.pi-sort-amount-up-alt:before{content:""}.pi-palette:before{content:""}.pi-undo:before{content:""}.pi-desktop:before{content:""}.pi-sliders-v:before{content:""}.pi-sliders-h:before{content:""}.pi-search-plus:before{content:""}.pi-search-minus:before{content:""}.pi-file-excel:before{content:""}.pi-file-pdf:before{content:""}.pi-check-square:before{content:""}.pi-chart-line:before{content:""}.pi-user-edit:before{content:""}.pi-exclamation-circle:before{content:""}.pi-android:before{content:""}.pi-google:before{content:""}.pi-apple:before{content:""}.pi-microsoft:before{content:""}.pi-heart:before{content:""}.pi-mobile:before{content:""}.pi-tablet:before{content:""}.pi-key:before{content:""}.pi-shopping-cart:before{content:""}.pi-comments:before{content:""}.pi-comment:before{content:""}.pi-briefcase:before{content:""}.pi-bell:before{content:""}.pi-paperclip:before{content:""}.pi-share-alt:before{content:""}.pi-envelope:before{content:""}.pi-volume-down:before{content:""}.pi-volume-up:before{content:""}.pi-volume-off:before{content:""}.pi-eject:before{content:""}.pi-money-bill:before{content:""}.pi-images:before{content:""}.pi-image:before{content:""}.pi-sign-in:before{content:""}.pi-sign-out:before{content:""}.pi-wifi:before{content:""}.pi-sitemap:before{content:""}.pi-chart-bar:before{content:""}.pi-camera:before{content:""}.pi-dollar:before{content:""}.pi-lock-open:before{content:""}.pi-table:before{content:""}.pi-map-marker:before{content:""}.pi-list:before{content:""}.pi-eye-slash:before{content:""}.pi-eye:before{content:""}.pi-folder-open:before{content:""}.pi-folder:before{content:""}.pi-video:before{content:""}.pi-inbox:before{content:""}.pi-lock:before{content:""}.pi-unlock:before{content:""}.pi-tags:before{content:""}.pi-tag:before{content:""}.pi-power-off:before{content:""}.pi-save:before{content:""}.pi-question-circle:before{content:""}.pi-question:before{content:""}.pi-copy:before{content:""}.pi-file:before{content:""}.pi-clone:before{content:""}.pi-calendar-times:before{content:""}.pi-calendar-minus:before{content:""}.pi-calendar-plus:before{content:""}.pi-ellipsis-v:before{content:""}.pi-ellipsis-h:before{content:""}.pi-bookmark:before{content:""}.pi-globe:before{content:""}.pi-replay:before{content:""}.pi-filter:before{content:""}.pi-print:before{content:""}.pi-align-right:before{content:""}.pi-align-left:before{content:""}.pi-align-center:before{content:""}.pi-align-justify:before{content:""}.pi-cog:before{content:""}.pi-cloud-download:before{content:""}.pi-cloud-upload:before{content:""}.pi-cloud:before{content:""}.pi-pencil:before{content:""}.pi-users:before{content:""}.pi-clock:before{content:""}.pi-user-minus:before{content:""}.pi-user-plus:before{content:""}.pi-trash:before{content:""}.pi-external-link:before{content:""}.pi-window-maximize:before{content:""}.pi-window-minimize:before{content:""}.pi-refresh:before{content:""}.pi-user:before{content:""}.pi-exclamation-triangle:before{content:""}.pi-calendar:before{content:""}.pi-chevron-circle-left:before{content:""}.pi-chevron-circle-down:before{content:""}.pi-chevron-circle-right:before{content:""}.pi-chevron-circle-up:before{content:""}.pi-angle-double-down:before{content:""}.pi-angle-double-left:before{content:""}.pi-angle-double-right:before{content:""}.pi-angle-double-up:before{content:""}.pi-angle-down:before{content:""}.pi-angle-left:before{content:""}.pi-angle-right:before{content:""}.pi-angle-up:before{content:""}.pi-upload:before{content:""}.pi-download:before{content:""}.pi-ban:before{content:""}.pi-star-fill:before{content:""}.pi-star:before{content:""}.pi-chevron-left:before{content:""}.pi-chevron-right:before{content:""}.pi-chevron-down:before{content:""}.pi-chevron-up:before{content:""}.pi-caret-left:before{content:""}.pi-caret-right:before{content:""}.pi-caret-down:before{content:""}.pi-caret-up:before{content:""}.pi-search:before{content:""}.pi-check:before{content:""}.pi-check-circle:before{content:""}.pi-times:before{content:""}.pi-times-circle:before{content:""}.pi-plus:before{content:""}.pi-plus-circle:before{content:""}.pi-minus:before{content:""}.pi-minus-circle:before{content:""}.pi-circle-on:before{content:""}.pi-circle-off:before{content:""}.pi-sort-down:before{content:""}.pi-sort-up:before{content:""}.pi-sort:before{content:""}.pi-step-backward:before{content:""}.pi-step-forward:before{content:""}.pi-th-large:before{content:""}.pi-arrow-down:before{content:""}.pi-arrow-left:before{content:""}.pi-arrow-right:before{content:""}.pi-arrow-up:before{content:""}.pi-bars:before{content:""}.pi-arrow-circle-down:before{content:""}.pi-arrow-circle-left:before{content:""}.pi-arrow-circle-right:before{content:""}.pi-arrow-circle-up:before{content:""}.pi-info:before{content:""}.pi-info-circle:before{content:""}.pi-home:before{content:""}.pi-spinner:before{content:""}.language-selector[data-v-2a83d61d]{min-width:140px}.language-selector--minimal[data-v-2a83d61d]{min-width:60px}.language-value[data-v-2a83d61d]{display:flex;align-items:center;gap:.5rem}.language-option[data-v-2a83d61d]{display:flex;align-items:center;gap:.5rem;padding:.25rem 0}.language-flag[data-v-2a83d61d]{font-size:1.2em}.language-name[data-v-2a83d61d]{flex:1}.language-current[data-v-2a83d61d]{color:var(--primary-color);margin-left:auto}.language-selector--minimal .language-name[data-v-2a83d61d]{display:none}.language-selector--minimal .language-value .language-name[data-v-2a83d61d]{display:inline}.notif-inbox[data-v-84f9028c]{width:360px;max-width:90vw;max-height:60vh;display:flex;flex-direction:column;background:var(--surface-card);color:var(--text)}.notif-inbox__head[data-v-84f9028c]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.notif-inbox__title[data-v-84f9028c]{font-weight:600;color:var(--text-strong)}.notif-link[data-v-84f9028c]{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.85rem;padding:.15rem .35rem;border-radius:4px}.notif-link[data-v-84f9028c]:hover{text-decoration:underline}.notif-inbox__empty[data-v-84f9028c]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1rem;color:var(--text-muted)}.notif-list[data-v-84f9028c]{list-style:none;margin:0;padding:0;overflow-y:auto}.notif-item[data-v-84f9028c]{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem 1rem;border-bottom:1px solid var(--border-soft)}.notif-item.is-unread[data-v-84f9028c]{background:var(--accent-soft)}.notif-body[data-v-84f9028c]{flex:1;min-width:0}.notif-item__title[data-v-84f9028c]{font-weight:600;font-size:.9rem;color:var(--text)}.notif-item__text[data-v-84f9028c]{font-size:.85rem;color:var(--text-muted)}.notif-item__meta[data-v-84f9028c]{font-size:.75rem;color:var(--text-faint);margin-top:.2rem}.notif-dot[data-v-84f9028c]{width:.6rem;height:.6rem;border-radius:50%;margin-top:.35rem;flex:0 0 auto;background:var(--accent)}.notif-dot.level-warning[data-v-84f9028c]{background:var(--warning)}.notif-dot.level-error[data-v-84f9028c]{background:var(--danger)}.notif-dot.level-success[data-v-84f9028c]{background:var(--success)}.notif-more[data-v-84f9028c]{background:none;border:none;border-top:1px solid var(--border);padding:.6rem;cursor:pointer;color:var(--accent)}.notif-bell[data-v-7761432b]{position:relative;display:inline-flex}.notif-bell__btn[data-v-7761432b]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:none;border-radius:50%;background:transparent;color:inherit;cursor:pointer;font-size:1.1rem;transition:background .15s ease}.notif-bell__btn[data-v-7761432b]:hover{background:var(--inverse-soft)}.notif-bell__badge[data-v-7761432b]{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--danger);color:#fff;font-size:.7rem;line-height:18px;text-align:center;font-weight:600}.notif-bell__panel[data-v-7761432b]{position:absolute;top:calc(100% + 8px);right:0;z-index:1100;background:var(--surface-card);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);overflow:hidden}.menu-fade-enter-active[data-v-7761432b],.menu-fade-leave-active[data-v-7761432b]{transition:opacity .15s ease,transform .15s ease}.menu-fade-enter-from[data-v-7761432b],.menu-fade-leave-to[data-v-7761432b]{opacity:0;transform:translateY(-6px)}.ring-overlay[data-v-a001b385]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);cursor:pointer}.ring-stage[data-v-a001b385]{position:relative;width:500px;height:500px;max-width:90vw;max-height:90vw;cursor:default}.ring-parent[data-v-a001b385]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px;border-radius:50%;border:3px solid rgba(255,255,255,.7);background:linear-gradient(145deg,#3b82f6f2,#2563ebf2);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;box-shadow:0 12px 40px #0006,0 0 0 8px #ffffff14;cursor:pointer;animation:ring-parent-in-a001b385 .25s ease-out}.ring-parent-icon[data-v-a001b385]{font-size:2.5rem;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}.ring-parent-icon .pi[data-v-a001b385],.ring-parent-icon i[data-v-a001b385]{color:#fff}.ring-parent-label[data-v-a001b385]{font-weight:600;font-size:.95rem;text-align:center;padding:0 .5rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.3)}@keyframes ring-parent-in-a001b385{0%{transform:translate(-50%,-50%) scale(1.4);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.ring-child[data-v-a001b385]{position:absolute;top:50%;left:50%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;min-width:155px;border-radius:999px;background:var(--surface-card);color:var(--text-strong);border:1px solid var(--border);cursor:pointer;font-weight:600;font-size:.95rem;box-shadow:var(--shadow-lg);white-space:nowrap;animation:ring-child-in-a001b385 .3s ease-out backwards;transition:transform .15s ease,background .15s ease,filter .15s ease}.ring-child[data-v-a001b385]:hover{background:var(--surface-hover);filter:brightness(1.05)}.ring-child i[data-v-a001b385]{color:var(--accent);font-size:1.05rem}@keyframes ring-child-in-a001b385{0%{opacity:0}to{opacity:1}}.ring-child[data-v-a001b385]:nth-child(2){animation-delay:.08s}.ring-child[data-v-a001b385]:nth-child(3){animation-delay:.16s}.ring-child[data-v-a001b385]:nth-child(4){animation-delay:.24s}.ring-child[data-v-a001b385]:nth-child(5){animation-delay:.32s}.ring-child[data-v-a001b385]:nth-child(6){animation-delay:.4s}.ring-child[data-v-a001b385]:nth-child(7){animation-delay:.48s}.ring-fade-enter-active[data-v-a001b385],.ring-fade-leave-active[data-v-a001b385]{transition:opacity .2s ease}.ring-fade-enter-from[data-v-a001b385],.ring-fade-leave-to[data-v-a001b385]{opacity:0}:root[data-theme=light] .ring-overlay[data-v-a001b385]{background:#0f132059}:root[data-theme=light] .ring-parent[data-v-a001b385]{background:var(--surface-card);border-color:var(--accent);color:var(--text-strong);box-shadow:var(--shadow-lg),0 0 0 6px var(--accent-soft)}:root[data-theme=light] .ring-parent-icon[data-v-a001b385],:root[data-theme=light] .ring-parent-icon .pi[data-v-a001b385],:root[data-theme=light] .ring-parent-icon i[data-v-a001b385]{color:#3b82f6;text-shadow:none}:root[data-theme=light] .ring-parent-label[data-v-a001b385]{color:var(--text-strong);text-shadow:none}:root[data-theme=light] .ring-child[data-v-a001b385]{background:var(--surface-card);border-color:var(--border);color:var(--text);box-shadow:var(--shadow-md)}:root[data-theme=light] .ring-child[data-v-a001b385]:hover{background:var(--surface-hover)}.edit-body[data-v-2b360d25]{display:flex;flex-direction:column;gap:1rem}.edit-field[data-v-2b360d25]{display:flex;flex-direction:column;gap:.25rem}.edit-label[data-v-2b360d25]{font-size:.8125rem;color:var(--text-muted)}.error-hint[data-v-2b360d25]{color:var(--danger-strong);font-size:.75rem}.edit-error[data-v-2b360d25]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--danger-soft);color:var(--danger-strong);border:1px solid var(--danger);border-radius:.375rem}.punch-edit-dialog[data-v-2b360d25] .p-dialog{border-radius:.5rem;overflow:hidden}.punch-edit-dialog[data-v-2b360d25] .p-dialog-header{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.punch-edit-dialog[data-v-2b360d25] .p-dialog-footer{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.timesheet-body[data-v-0676340a]{display:flex;flex-direction:column;gap:1rem}.timesheet-filters[data-v-0676340a]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-soft)}.filter-group[data-v-0676340a]{display:flex;flex-direction:column;gap:.25rem;min-width:0}.filter-label[data-v-0676340a]{font-size:.8125rem;color:var(--text-muted)}.filter-nav[data-v-0676340a]{flex-direction:row;align-items:center;gap:.25rem;align-self:flex-end}.filter-user[data-v-0676340a],.filter-user-select[data-v-0676340a]{min-width:12rem}.timesheet-error[data-v-0676340a]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--danger-soft);color:var(--danger-strong);border:1px solid var(--danger);border-radius:.375rem}.timesheet-locked[data-v-0676340a]{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--warning-soft);color:var(--warning-strong);border:1px solid var(--warning);border-radius:.375rem;font-size:.9rem}.timesheet-locked .locked-spacer[data-v-0676340a]{flex:1}.row-locked-icon[data-v-0676340a]{color:var(--text-faint)}.timesheet-empty[data-v-0676340a]{padding:2rem 1rem;text-align:center;color:var(--text-muted)}.timesheet-note[data-v-0676340a]{margin:.5rem 0 0;font-size:.875rem;color:var(--text-muted)}.clocked-in-pill[data-v-0676340a]{display:inline-block;padding:.125rem .5rem;font-size:.75rem;font-weight:500;background:var(--accent-soft);color:var(--accent);border-radius:.25rem}.row-actions[data-v-0676340a]{display:flex;gap:.25rem}.modal-footer-inner[data-v-0676340a]{display:flex;justify-content:flex-end;gap:.5rem}.timesheet-modal[data-v-0676340a] .p-datatable-header,.timesheet-modal[data-v-0676340a] .p-datatable-thead>tr>th{background:var(--surface-sunken);color:var(--text-strong)}.timesheet-modal[data-v-0676340a] .p-dialog{border-radius:.5rem;overflow:hidden}.timesheet-modal[data-v-0676340a] .p-dialog-header{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.timesheet-modal[data-v-0676340a] .p-dialog-footer{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.timesheet-modal[data-v-0676340a] .p-datatable{border-radius:.45rem;overflow:hidden}.app-topbar[data-v-8f9ae738]{display:flex;align-items:center;height:3.75rem;padding:.35rem 1rem 0;background:var(--surface-card);border-bottom:1px solid var(--border);gap:1rem;flex-shrink:0}.topbar-logo-wrapper[data-v-8f9ae738]{position:relative;flex-shrink:0}.topbar-logo[data-v-8f9ae738]{display:flex;align-items:center;background:none;border:none;padding:0;cursor:pointer;flex-shrink:0}.logo-img[data-v-8f9ae738]{height:1.4rem;width:auto;max-width:120px;-o-object-fit:contain;object-fit:contain}:root[data-theme=dark] .logo-img--custom[data-v-8f9ae738]{filter:brightness(0) invert(1)}.logo-module-panel[data-v-8f9ae738]{position:absolute;top:calc(100% + .5rem);left:0;z-index:200;min-width:220px;background:var(--surface-card);border:1px solid var(--border);border-radius:.75rem;box-shadow:0 12px 36px #00000040;overflow:hidden}.logo-module-header[data-v-8f9ae738]{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem .55rem;border-bottom:1px solid var(--border)}.logo-module-title[data-v-8f9ae738]{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.logo-module-all-link[data-v-8f9ae738]{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--primary-500, #0078b4);text-decoration:none;transition:opacity .15s}.logo-module-all-link[data-v-8f9ae738]:hover{opacity:.75}.logo-module-all-link .pi[data-v-8f9ae738]{font-size:.65rem}.logo-module-item[data-v-8f9ae738]{display:flex;align-items:center;gap:.65rem;padding:.6rem .9rem;text-decoration:none;color:var(--text-strong);font-size:.85rem;transition:background .15s}.logo-module-item[data-v-8f9ae738]:hover{background:var(--surface-hover)}.logo-module-icon[data-v-8f9ae738]{width:28px;height:28px;border-radius:.45rem;background:var(--primary-500, #0078b4);display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-module-icon i[data-v-8f9ae738]{font-size:.8rem;color:#fff}.logo-module-label[data-v-8f9ae738]{color:var(--text-color);font-size:.85rem}.logo-module-empty[data-v-8f9ae738]{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1.5rem 1rem;text-align:center}.logo-module-empty .pi[data-v-8f9ae738]{font-size:1.4rem;color:var(--text-muted)}.logo-module-empty p[data-v-8f9ae738]{font-size:.8rem;margin:0;color:var(--text-muted)}.logo-module-setup-link[data-v-8f9ae738]{font-size:.75rem;color:var(--primary-500, #0078b4);text-decoration:none}.logo-module-setup-link[data-v-8f9ae738]:hover{opacity:.75}.logo-menu-fade-enter-active[data-v-8f9ae738],.logo-menu-fade-leave-active[data-v-8f9ae738]{transition:opacity .15s,transform .15s}.logo-menu-fade-enter-from[data-v-8f9ae738],.logo-menu-fade-leave-to[data-v-8f9ae738]{opacity:0;transform:translateY(-6px)}.topbar-center[data-v-8f9ae738]{flex:1;min-width:0}.topbar-right[data-v-8f9ae738],.topbar-actions[data-v-8f9ae738]{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.topbar-pill[data-v-8f9ae738]{display:flex;align-items:center;gap:.4rem;background:var(--surface-sunken);border:1px solid var(--border);border-radius:.5rem;padding:.3rem .6rem;font-size:.8rem;color:var(--text-strong)}.pill-button[data-v-8f9ae738]{background:none;border:none;color:inherit;font:inherit;padding:0;cursor:pointer}button.topbar-pill[data-v-8f9ae738]{font:inherit;color:inherit;cursor:pointer}.topbar-pill .pi-map-marker[data-v-8f9ae738]{font-size:.8rem;color:var(--text-muted)}.pill-value[data-v-8f9ae738]{display:flex;align-items:center;gap:.35rem;cursor:pointer;white-space:nowrap}.pill-edit[data-v-8f9ae738]{font-size:.6rem;opacity:.3;transition:opacity .2s}.pill-value:hover .pill-edit[data-v-8f9ae738]{opacity:.8}.topbar-select[data-v-8f9ae738]{min-width:160px}.topbar-pill[data-v-8f9ae738] .p-select{background:var(--surface-hover);border:none;border-radius:.4rem;font-size:.8rem;height:1.6rem;color:var(--text)}.topbar-pill[data-v-8f9ae738] .p-select .p-select-label{padding:.15rem .4rem;font-size:.8rem;color:var(--text)}.user-pill-wrapper[data-v-8f9ae738],.location-menu-wrapper[data-v-8f9ae738]{position:relative}.location-options-btn[data-v-8f9ae738]{gap:.3rem;cursor:pointer;transition:background .15s}.location-options-btn[data-v-8f9ae738]:hover{background:var(--surface-hover)}.location-options-btn .pi-sliders-h[data-v-8f9ae738]{font-size:.8rem;color:var(--text-muted)}.location-options-label[data-v-8f9ae738]{font-size:.8rem;color:var(--text-strong);white-space:nowrap}.register-indicator-pill[data-v-8f9ae738]{color:var(--accent-strong, #3b82f6);border-color:var(--accent-soft, var(--border))}.register-indicator-pill .pi-desktop[data-v-8f9ae738]{font-size:.8rem}.register-indicator-label[data-v-8f9ae738]{font-size:.8rem;font-weight:600;white-space:nowrap}.register-indicator-unselect[data-v-8f9ae738]{display:flex;align-items:center;justify-content:center;background:none;border:none;color:inherit;opacity:.6;cursor:pointer;padding:.1rem;margin-left:.1rem;border-radius:3px;font-size:.7rem}.register-indicator-unselect[data-v-8f9ae738]:hover{opacity:1;background:#00000014}.register-list-status[data-v-8f9ae738]{padding:1.25rem;text-align:center;font-size:.9rem;color:var(--text-muted, #6b7280)}.register-list-status.error[data-v-8f9ae738]{color:#b91c1c}.location-menu[data-v-8f9ae738]{min-width:200px;right:0;left:auto}.location-menu-title[data-v-8f9ae738]{padding:.6rem .85rem .45rem;color:var(--text-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.user-pill[data-v-8f9ae738]{cursor:pointer;padding-left:.3rem;transition:background .15s}.user-pill[data-v-8f9ae738]:hover{background:var(--surface-hover)}.user-avatar[data-v-8f9ae738]{width:1.5rem;height:1.5rem;border-radius:.4rem;background:linear-gradient(135deg,var(--accent-strong),var(--accent));display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:700;color:#fff;flex-shrink:0}.user-avatar.lg[data-v-8f9ae738]{width:2rem;height:2rem;font-size:.7rem;border-radius:.5rem}.user-name-text[data-v-8f9ae738]{white-space:nowrap}.pill-chevron[data-v-8f9ae738]{font-size:.55rem;color:var(--text-muted);transition:transform .2s}.pill-chevron.open[data-v-8f9ae738]{transform:rotate(180deg)}.user-menu[data-v-8f9ae738]{position:absolute;top:calc(100% + .4rem);right:0;min-width:220px;background:var(--surface-card);border:1px solid var(--border);border-radius:.6rem;box-shadow:var(--shadow-lg);overflow:hidden;z-index:100}.user-menu-header[data-v-8f9ae738]{display:flex;align-items:center;gap:.6rem;padding:.75rem .85rem}.menu-user-name[data-v-8f9ae738]{color:var(--text);font-size:.8rem;font-weight:600}.menu-user-email[data-v-8f9ae738]{color:var(--text-muted);font-size:.7rem;margin-top:.1rem}.user-menu-divider[data-v-8f9ae738]{height:1px;background:var(--border)}.user-menu-section[data-v-8f9ae738]{padding:.6rem .85rem}.user-menu-section-label[data-v-8f9ae738]{color:var(--text-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.4rem}.theme-options[data-v-8f9ae738]{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem}.theme-option[data-v-8f9ae738]{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.45rem .3rem;background:var(--surface-sunken);border:1px solid var(--border);border-radius:.4rem;color:var(--text-strong);font-size:.7rem;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.theme-option i[data-v-8f9ae738]{font-size:.95rem}.theme-option[data-v-8f9ae738]:hover{color:var(--text);border-color:var(--border-strong)}.theme-option.active[data-v-8f9ae738]{color:var(--accent);border-color:var(--accent-strong);background:var(--accent-soft)}.user-menu-item[data-v-8f9ae738]{display:flex;align-items:center;gap:.5rem;width:100%;padding:.6rem .85rem;background:none;border:none;color:var(--text-strong);font-size:.8rem;cursor:pointer;text-decoration:none;transition:background .15s}.user-menu-item[data-v-8f9ae738]:hover{background:var(--surface-hover);color:var(--text)}.user-menu-item.is-landing[data-v-8f9ae738]{color:var(--p-primary-color);font-weight:600}.user-menu-item[data-v-8f9ae738]:disabled{cursor:progress;opacity:.6}.user-menu-note.is-error[data-v-8f9ae738]{color:var(--p-red-400, #f87171)}.user-menu-note[data-v-8f9ae738]{padding:0 .85rem .5rem;font-size:.7rem;line-height:1.3;color:var(--text-muted)}.user-menu-item i[data-v-8f9ae738]{font-size:.85rem;color:var(--text-muted)}.clock-toggle.is-clocked-in[data-v-8f9ae738],.clock-toggle.is-clocked-in i[data-v-8f9ae738]{color:var(--success)}.clock-toggle.is-on-break[data-v-8f9ae738],.clock-toggle.is-on-break i[data-v-8f9ae738]{color:var(--warning)}.clock-toggle:not(.is-clocked-in):not(.is-on-break) i[data-v-8f9ae738]{color:var(--text-muted)}.clock-elapsed[data-v-8f9ae738]{margin-left:auto;font-size:.72rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.menu-fade-enter-active[data-v-8f9ae738],.menu-fade-leave-active[data-v-8f9ae738]{transition:opacity .15s,transform .15s}.menu-fade-enter-from[data-v-8f9ae738],.menu-fade-leave-to[data-v-8f9ae738]{opacity:0;transform:translateY(-4px)}.ring-overlay[data-v-8f9ae738]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);cursor:pointer}.ring-stage[data-v-8f9ae738]{position:relative;width:500px;height:500px;max-width:90vw;max-height:90vw;cursor:default}.ring-parent[data-v-8f9ae738]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px;border-radius:50%;border:3px solid rgba(255,255,255,.7);background:linear-gradient(145deg,#3b82f6f2,#2563ebf2);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;box-shadow:0 12px 40px #0006,0 0 0 8px #ffffff14;animation:ring-parent-in-8f9ae738 .25s ease-out}.ring-parent-icon[data-v-8f9ae738]{font-size:2.5rem;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}.ring-parent-icon .pi[data-v-8f9ae738],.ring-parent-icon i[data-v-8f9ae738]{color:#fff}.ring-parent-label[data-v-8f9ae738]{font-weight:600;font-size:.95rem;text-align:center;padding:0 .5rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.3)}@keyframes ring-parent-in-8f9ae738{0%{transform:translate(-50%,-50%) scale(1.4);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.ring-child[data-v-8f9ae738]{position:absolute;top:50%;left:50%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;min-width:155px;border-radius:999px;background:#fffffff2;color:#1f2937;border:none;cursor:pointer;font-weight:600;font-size:.95rem;box-shadow:0 8px 24px #00000059;white-space:nowrap;animation:ring-child-in-8f9ae738 .3s ease-out backwards;transition:transform .15s ease,background .15s ease,filter .15s ease}.ring-child[data-v-8f9ae738]:hover{background:#fff;filter:brightness(1.05)}.ring-child i[data-v-8f9ae738]{color:#3b82f6;font-size:1.05rem}@keyframes ring-child-in-8f9ae738{0%{opacity:0}to{opacity:1}}.ring-child[data-v-8f9ae738]:nth-child(2){animation-delay:.08s}.ring-child[data-v-8f9ae738]:nth-child(3){animation-delay:.16s}.ring-child[data-v-8f9ae738]:nth-child(4){animation-delay:.24s}.ring-child[data-v-8f9ae738]:nth-child(5){animation-delay:.32s}.ring-child[data-v-8f9ae738]:nth-child(6){animation-delay:.4s}.ring-fade-enter-active[data-v-8f9ae738],.ring-fade-leave-active[data-v-8f9ae738]{transition:opacity .2s ease}.ring-fade-enter-from[data-v-8f9ae738],.ring-fade-leave-to[data-v-8f9ae738]{opacity:0}.location-list-overlay[data-v-8f9ae738]{align-items:flex-start;padding-top:12vh}.location-list-card[data-v-8f9ae738]{width:420px;max-width:92vw;max-height:70vh;display:flex;flex-direction:column;background:var(--surface-card, #fff);color:var(--text-color, #1f2937);border-radius:12px;box-shadow:0 20px 60px #00000073;overflow:hidden;animation:ring-parent-in-8f9ae738 .2s ease-out}.location-list-header[data-v-8f9ae738]{display:flex;align-items:center;gap:.5rem;padding:.9rem 1.1rem;font-weight:600;font-size:1rem;border-bottom:1px solid var(--surface-border, #e5e7eb)}.location-list-header i.pi-map-marker[data-v-8f9ae738]{color:#3b82f6}.location-list-header span[data-v-8f9ae738]{flex:1}.location-list-close[data-v-8f9ae738]{background:transparent;border:none;color:inherit;cursor:pointer;padding:.25rem;border-radius:4px;opacity:.7}.location-list-close[data-v-8f9ae738]:hover{opacity:1;background:#0000000d}.location-list-search[data-v-8f9ae738]{position:relative;padding:.65rem .9rem;border-bottom:1px solid var(--surface-border, #e5e7eb)}.location-list-search i[data-v-8f9ae738]{position:absolute;top:50%;left:1.35rem;transform:translateY(-50%);color:#9ca3af;font-size:.9rem}.location-list-search input[data-v-8f9ae738]{width:100%;padding:.5rem .65rem .5rem 1.85rem;border:1px solid var(--surface-border, #e5e7eb);border-radius:6px;font-size:.9rem;background:var(--surface-ground, #f9fafb);color:inherit;outline:none}.location-list-search input[data-v-8f9ae738]:focus{border-color:#3b82f6}.location-list[data-v-8f9ae738]{list-style:none;margin:0;padding:.25rem 0;overflow-y:auto;flex:1}.location-list-empty[data-v-8f9ae738]{padding:1rem;text-align:center;color:#6b7280;font-size:.9rem}.location-list-item.active .location-list-btn[data-v-8f9ae738]{background:#3b82f614}.location-list-btn[data-v-8f9ae738]{width:100%;display:flex;align-items:center;gap:.6rem;padding:.65rem 1.1rem;background:transparent;border:none;color:inherit;cursor:pointer;text-align:left;font-size:.95rem}.location-list-btn[data-v-8f9ae738]:hover{background:#0000000a}.location-list-btn i.pi-map-marker[data-v-8f9ae738]{color:#3b82f6;font-size:1rem}.location-list-name[data-v-8f9ae738]{flex:1}.location-list-check[data-v-8f9ae738]{color:#10b981}.register-status-pill[data-v-8f9ae738]{padding:2px 9px;border-radius:var(--radius-pill, 999px);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.register-status-pill[data-open=true][data-v-8f9ae738]{background:var(--success-soft);color:var(--success)}.register-status-pill[data-open=false][data-v-8f9ae738]{background:var(--danger-soft);color:var(--danger)}:root[data-theme=light] .ring-parent[data-v-8f9ae738]{background:var(--surface-card);border-color:var(--accent);color:var(--text-strong);box-shadow:var(--shadow-lg),0 0 0 6px var(--accent-soft)}:root[data-theme=light] .ring-parent-icon[data-v-8f9ae738],:root[data-theme=light] .ring-parent-icon .pi[data-v-8f9ae738],:root[data-theme=light] .ring-parent-icon i[data-v-8f9ae738]{color:#3b82f6;text-shadow:none}:root[data-theme=light] .ring-parent-label[data-v-8f9ae738]{color:var(--text-strong);text-shadow:none}.app-layout[data-v-f9d4d1fd]{display:flex;flex-direction:column;min-height:100vh}.app-layout-content[data-v-f9d4d1fd]{flex:1;overflow:auto}#layout-topbar-center[data-v-f9d4d1fd],#layout-topbar-actions[data-v-f9d4d1fd]{display:contents}
