/*! tailwindcss v4.3.2 | 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)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:"Hanken Grotesk", "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:#7c2fc9;--color-primary-strong:#691fb0;--color-primary-tint:#f4ecfc;--color-primary-tint-border:#e6d5f7;--color-bg:#f4f2fa;--color-surface:#fff;--color-surface-2:#faf8fe;--color-border:#e8e4f1;--color-border-strong:#dbd4ec;--color-text:#1b1622;--color-muted:#6c6580;--color-danger:#c0261f;--color-danger-tint:#fdecea;--color-success:#1a7d4c;--color-success-tint:#e7f6ee;--color-warning:#b26a00;--color-warning-tint:#fbf0dd;--color-sidebar-a:#34135f;--color-sidebar-b:#210a3f;--color-sidebar-accent:#c79bef}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root[data-theme=dark]{--color-primary:#9257db;--color-primary-strong:#a874e6;--color-primary-tint:#271b39;--color-primary-tint-border:#3b2a54;--color-bg:#141019;--color-surface:#1e1727;--color-surface-2:#261d33;--color-border:#322a41;--color-border-strong:#40354f;--color-text:#ece7f3;--color-muted:#a89fb8;--color-danger:#ff6b6b;--color-danger-tint:#3a1c1c;--color-success:#57cc8b;--color-success-tint:#14301f;--color-warning:#e0a94f;--color-warning-tint:#352712}:root[data-theme=dark] .topbar{background:#14101ad1}:root[data-theme=dark] .calendar-cell.calendar-color-verde{background:#14301f;border-color:#1f4a30}:root[data-theme=dark] .calendar-cell.calendar-color-laranja{background:#352712;border-color:#5a4420}:root[data-theme=dark] .calendar-cell.calendar-color-vermelho{background:#3a1c1c;border-color:#5a2b2b}:root[data-theme=dark] .calendar-cell.calendar-color-amarelo{background:#352d12;border-color:#5a4a20}:root[data-theme=dark] .calendar-cell.calendar-color-verde:hover{background:#1c3d28}:root[data-theme=dark] .calendar-cell.calendar-color-laranja:hover{background:#45341a}:root[data-theme=dark] .calendar-cell.calendar-color-vermelho:hover{background:#4a2525}:root[data-theme=dark] .calendar-cell.calendar-color-amarelo:hover{background:#453c1a}:root[data-theme=dark] .calendar-cell.calendar-color-feriado-nacional{background:#271b39;border-color:#3b2a54}:root[data-theme=dark] .calendar-cell.calendar-color-feriado-municipal{background:#123539;border-color:#1d5259}:root[data-theme=dark] .calendar-cell.calendar-color-feriado-nacional:hover{background:#33244a}:root[data-theme=dark] .calendar-cell.calendar-color-feriado-municipal:hover{background:#17454c}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}h1{letter-spacing:-.01em;margin:0 0 .35rem;font-size:1.6rem;font-weight:700}h2{margin:0 0 .5rem;font-size:1.2rem;font-weight:700}h3{margin:0 0 .4rem;font-size:1rem;font-weight:600}a{color:var(--color-primary)}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;vertical-align:middle;-webkit-user-select:none;user-select:none;font-family:Material Symbols Outlined;line-height:1}.centered-message{height:100vh;color:var(--color-muted);justify-content:center;align-items:center;display:flex}.login-screen{background:radial-gradient(1100px 600px at 15% -10%, #5a2a93 0%, transparent 55%), radial-gradient(900px 500px at 110% 120%, #3a1466 0%, transparent 50%), linear-gradient(160deg, var(--color-sidebar-a), var(--color-sidebar-b));justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:var(--color-surface);border-radius:20px;flex-direction:column;gap:1rem;width:100%;max-width:380px;padding:2.5rem 2.25rem;display:flex;box-shadow:0 24px 60px -20px #18082d8c}.login-card h1{text-align:center;margin:0;font-size:1.3rem}.login-brand{flex-direction:column;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.login-brand img{border-radius:16px;width:64px;height:64px;box-shadow:0 10px 24px -10px #7c2fc9b3}.login-brand-name{text-align:center}.login-brand-name strong{letter-spacing:-.01em;font-size:1.25rem;font-weight:800;display:block}.login-brand-name span{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary);font-size:.7rem}label{color:var(--color-muted);flex-direction:column;gap:.4rem;font-size:.8rem;font-weight:500;display:flex}input,select,textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:10px;padding:.6rem .75rem;font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-tint);outline:none}input[type=checkbox]{width:17px;height:17px;accent-color:var(--color-primary);cursor:pointer;padding:0}input[type=range]{accent-color:var(--color-primary);box-shadow:none;cursor:pointer;background:0 0;border:none;padding:0}input[type=range]:focus{box-shadow:none}input[type=file]{display:none}.checkbox-field{color:var(--color-text);cursor:pointer;flex-direction:row;align-items:center;gap:.55rem;font-weight:500}button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.6rem 1.1rem;font-family:inherit;font-size:.92rem;font-weight:600;transition:background .15s,box-shadow .15s,transform 50ms}button:hover{background:var(--color-primary-strong)}button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}input:disabled,select:disabled{background:var(--color-surface-2);color:var(--color-muted);cursor:not-allowed}button.danger{background:var(--color-danger)}button.danger:hover{background:#9e1d17}.app-shell{min-height:100vh;display:flex}.sidebar{background:linear-gradient(180deg, var(--color-sidebar-a), var(--color-sidebar-b));color:#ffffffe6;flex-direction:column;flex-shrink:0;width:256px;height:100vh;padding:1.5rem .85rem 1rem;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:.7rem;margin-bottom:1.25rem;padding:0 .6rem .35rem;display:flex}.sidebar-brand img{border-radius:11px;width:42px;height:42px;box-shadow:0 6px 16px -6px #0009}.sidebar-brand strong{color:#fff;letter-spacing:-.01em;font-size:1.15rem;font-weight:800;line-height:1.1;display:block}.sidebar-brand span{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--color-sidebar-accent);font-size:.62rem}.sidebar nav{flex-direction:column;flex:1;gap:.15rem;display:flex;overflow-y:auto}.sidebar nav a{color:#ffffffb8;border-left:3px solid #0000;border-radius:10px;align-items:center;gap:.8rem;padding:.62rem .75rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar nav a .material-symbols-outlined{opacity:.9;font-size:1.25rem}.sidebar nav a:hover{color:#fff;background:#ffffff14}.sidebar nav a.active{color:#fff;border-left-color:var(--color-sidebar-accent);background:#c79bef2e;font-weight:700}.sidebar nav a.active .material-symbols-outlined{opacity:1;font-variation-settings:"FILL" 1;color:var(--color-sidebar-accent)}.sidebar-footer{border-top:1px solid #ffffff1f;align-items:center;gap:.7rem;margin-top:.75rem;padding:.75rem .6rem .25rem;display:flex}.sidebar-footer .avatar{color:#fff;background:#c79bef40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.sidebar-footer .who{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar-footer .who strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.sidebar-footer .who span{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-sidebar-accent);font-size:.6rem}.sidebar-footer button{color:#ffffffb3;background:0 0;border:none;border-radius:8px;align-items:center;padding:.35rem;display:flex}.sidebar-footer button:hover{color:#fff;background:#ffffff1a}.main-area{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);background:#fcfaffd1;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;height:62px;padding:0 2.5rem;display:flex;position:sticky;top:0}.topbar-title{letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.topbar-right{align-items:center;gap:.35rem;display:flex}.topbar-search{flex:1;align-items:center;max-width:440px;display:flex;position:relative}.topbar-search .search-ic{color:var(--color-muted);pointer-events:none;font-size:1.2rem;position:absolute;left:.85rem}.topbar-search input{border:1px solid var(--color-border-strong);background:var(--color-surface-2);border-radius:999px;width:100%;padding:.5rem .9rem .5rem 2.6rem;font-size:.9rem}.topbar-search input:focus{background:var(--color-surface)}.search-results{width:100%;min-width:0;max-height:360px;left:0;right:0;overflow-y:auto}.search-result-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.search-result-text .muted{font-size:.75rem}.dropdown-item.active{background:var(--color-surface-2)}.icon-btn{width:40px;height:40px;color:var(--color-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.icon-btn:hover{background:var(--color-primary-tint);color:var(--color-primary)}.icon-btn .badge{background:var(--color-danger);color:#fff;min-width:17px;height:17px;font-family:var(--font-mono);border:2px solid var(--color-bg);border-radius:9px;justify-content:center;align-items:center;padding:0 4px;font-size:.62rem;font-weight:600;display:flex;position:absolute;top:4px;right:4px}.topbar-divider{background:var(--color-border);width:1px;height:30px;margin:0 .5rem}.user-chip{color:var(--color-text);background:0 0;border:none;border-radius:12px;align-items:center;gap:.6rem;padding:.3rem .5rem;display:flex}.user-chip:hover{background:var(--color-primary-tint)}.user-chip .who{flex-direction:column;align-items:flex-end;line-height:1.15;display:flex}.user-chip .who strong{font-size:.85rem;font-weight:600}.user-chip .who span{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary);font-size:.6rem}.user-chip .avatar,.dropdown .avatar{object-fit:cover;background:linear-gradient(150deg, var(--color-primary), var(--color-sidebar-a));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.menu-wrap{align-items:center;display:flex;position:relative}.dropdown{z-index:50;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;min-width:280px;animation:.12s ease-out dropdown-in;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 18px 44px -18px #18082d66}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px)}}.dropdown-head{border-bottom:1px solid var(--color-border);align-items:center;gap:.7rem;padding:.9rem 1rem;display:flex}.dropdown-head .who{flex-direction:column;min-width:0;display:flex}.dropdown-head .who strong{font-size:.9rem}.dropdown-head .who span{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.dropdown-title{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:.7rem 1rem .4rem;font-size:.65rem}.dropdown-item{width:100%;color:var(--color-text);text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:.7rem;padding:.7rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.dropdown-item:hover{background:var(--color-surface-2)}.dropdown-item .material-symbols-outlined{color:var(--color-muted);font-size:1.2rem}.dropdown-item .di-count{font-family:var(--font-mono);background:var(--color-surface-2);min-width:22px;height:22px;color:var(--color-muted);border-radius:11px;justify-content:center;align-items:center;margin-left:auto;padding:0 6px;font-size:.78rem;font-weight:600;display:flex}.dropdown-item .di-count.has{background:var(--color-danger-tint);color:var(--color-danger)}.dropdown-item.logout{color:var(--color-danger);border-top:1px solid var(--color-border)}.dropdown-item.logout .material-symbols-outlined{color:var(--color-danger)}.dropdown-empty{color:var(--color-muted);text-align:center;padding:1.1rem 1rem;font-size:.85rem}.content{flex:1;min-width:0;max-width:1280px;padding:2.25rem 2.5rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.page-actions{justify-content:flex-end;gap:.5rem;margin-bottom:1.25rem;display:flex}.btn-with-icon{align-items:center;gap:.4rem;display:inline-flex}.btn-with-icon .material-symbols-outlined{font-size:1.15rem}.banco-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin:0 0 1.25rem;display:grid}.banco-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;flex-direction:column;gap:.2rem;padding:1rem 1.15rem;display:flex;box-shadow:0 1px 2px #18082d0a}.banco-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);font-size:.68rem}.banco-value{letter-spacing:-.02em;font-size:2rem;font-weight:800;line-height:1.05}.banco-sub{font-family:var(--font-mono);color:var(--color-muted);font-size:.85rem}.banco-counts{flex-direction:column;gap:.15rem;margin-top:.15rem;font-size:.92rem;display:flex}.banco-counts strong{font-weight:800}.section-title{border-left:4px solid var(--color-primary);margin:2.25rem 0 .9rem;padding-left:.7rem;font-size:1.15rem;font-weight:700}.card-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.35rem;display:flex;box-shadow:0 1px 2px #18082d0a}.card-main{flex-direction:column;gap:.2rem;display:flex}.card-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.card--stacked{flex-flow:column;justify-content:flex-start;align-items:stretch;gap:.85rem}.card-footer{flex-direction:column;gap:.6rem;display:flex}.card-panel{border-top:1px dashed var(--color-border);flex-wrap:wrap;align-items:center;gap:.5rem;padding-top:.65rem;display:flex}.card-panel input{flex:260px;min-width:0}button.btn-sm{border-radius:8px;padding:.32rem .8rem;font-size:.82rem}.card-panel select,.card-panel input{padding-top:.38rem;padding-bottom:.38rem;font-size:.88rem}.card-sublist{border-top:1px solid var(--color-border);flex-direction:column;gap:.6rem;width:100%;margin-top:1rem;padding-top:1rem;display:flex}.card-subitem{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem;display:flex}.muted{color:var(--color-muted);font-size:.85rem}.empty-state{color:var(--color-muted);font-style:italic}.error-text{color:var(--color-danger);margin:0;font-size:.85rem}.hint-text{color:var(--color-muted);margin:0 0 .75rem;font-size:.85rem}.success-text{color:var(--color-success);margin:0;font-size:.85rem}.filter-row{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.filter-row button{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-border-strong);font-weight:500}.filter-row button:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-row button.active-filter{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-row button.active-filter:hover{color:#fff}.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.6rem;display:flex;box-shadow:0 1px 2px #18082d0a}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-grid>label{min-width:0}.form-grid select,.form-grid input{width:100%}.form-grid input[type=checkbox]{flex-shrink:0;width:17px}.form-grid .checkbox-block{border:1px solid var(--color-border,#00000014);border-radius:10px;flex-direction:column;grid-column:1/-1;gap:.35rem;padding:.75rem .9rem;display:flex}.checkbox-block .checkbox-field{font-size:.9rem}.form-section-title{text-transform:uppercase;letter-spacing:.03em}.form-divider{border:none;border-top:1px solid var(--color-border);width:100%;margin:.25rem 0}.periodos-columns{grid-template-columns:1fr 1fr;align-items:stretch;gap:0 1.5rem;display:grid}.periodos-editor>button{margin-top:auto}.periodos-editor{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.saldo-row{border-top:1px solid var(--color-border);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.75rem;margin-top:.15rem;padding-top:.85rem;display:flex}.saldo-row .grow{flex:1;min-width:160px}.saldo-editor{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.4rem;display:flex}.saldo-editor input,.saldo-editor select{width:72px}.saldo-editor input[type=date]{width:auto;min-width:160px}.saldo-editor .sep{color:var(--color-muted);font-weight:700}.periodos-editor .inline-field{align-items:center;margin-top:0}.periodos-editor .inline-field input{flex:none;width:auto}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-top:1.5rem;display:grid}.metric-card{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:16px;flex-direction:column;gap:.15rem;padding:1.35rem;text-decoration:none;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #18082d0a}.metric-card:before{content:"";background:var(--color-danger);width:4px;height:100%;position:absolute;top:0;left:0}.metric-card:hover{border-color:var(--color-border-strong);transform:translateY(-2px);box-shadow:0 12px 26px -14px #18082d47}.metric-card-neutral:before{background:var(--color-success)}.metric-card-head{justify-content:space-between;align-items:flex-start;display:flex}.metric-icon{background:var(--color-danger-tint);width:40px;height:40px;color:var(--color-danger);border-radius:11px;justify-content:center;align-items:center;display:flex}.metric-card-neutral .metric-icon{background:var(--color-success-tint);color:var(--color-success)}.metric-value{letter-spacing:-.02em;font-size:2.35rem;font-weight:800;line-height:1}.metric-card-neutral .metric-value{color:var(--color-success)}.shortcut-card{flex-direction:row;align-items:flex-start;gap:1rem}.shortcut-icon{background:var(--color-primary-tint);width:46px;height:46px;color:var(--color-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.shortcut-card:hover .shortcut-icon{background:var(--color-primary);color:#fff}.shortcut-body{flex-direction:column;gap:.25rem;display:flex}.activity-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:.5rem 1.35rem;box-shadow:0 1px 2px #18082d0a}.activity-list{margin:0;padding:0;list-style:none}.activity-item{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:.9rem;padding:.85rem 0;display:flex}.activity-item:last-child{border-bottom:none}.activity-icon{background:var(--color-primary-tint);width:34px;height:34px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-icon .material-symbols-outlined{font-size:1.15rem}.activity-text{flex-direction:column;gap:.15rem;min-width:0;font-size:.92rem;display:flex}.activity-text .muted{font-size:.78rem}.activity-icon-cake{background:var(--color-warning-tint);color:var(--color-warning)}.birthday-hoje-tag{background:var(--color-warning-tint);color:var(--color-warning);vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.1rem .5rem;font-size:.72rem;font-weight:700;display:inline-flex}.metric-label{color:var(--color-muted);margin-top:.35rem;font-size:.9rem;font-weight:500}.metric-detail{color:var(--color-muted);margin-top:.25rem;font-size:.75rem}.shortcut-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;display:grid}.shortcut-card{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:16px;flex-direction:column;gap:.3rem;padding:1.35rem;text-decoration:none;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex;box-shadow:0 1px 2px #18082d0a}.shortcut-card strong{font-size:1rem}.shortcut-card:hover{border-color:var(--color-primary-tint-border);transform:translateY(-2px);box-shadow:0 12px 26px -14px #18082d47}.employee-picker{flex-wrap:wrap;gap:.75rem;max-width:640px;margin:1rem 0;display:flex}.employee-picker input,.employee-picker select{flex:1;min-width:200px}.month-nav{align-items:center;gap:1rem;margin:1rem 0;display:flex}.month-nav button{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);padding:.35rem .75rem}.month-nav button:hover{border-color:var(--color-primary);color:var(--color-primary)}.month-nav strong{text-transform:capitalize;font-size:1.05rem}.legend-dot{border-radius:4px;width:.7rem;height:.7rem;margin:0 .15rem -.05rem .4rem;display:inline-block}.legend-verde{background:#4caf50}.legend-laranja{background:#ffb300}.legend-vermelho{background:#ef5350}.legend-roxo{background:var(--color-primary)}.legend-amarelo{background:#fdd835}.legend-feriado-nacional{background:var(--color-primary)}.legend-feriado-municipal{background:#1f9aa6}.calendar-frame{border:1px solid var(--color-border);background:var(--color-surface);border-radius:16px;max-width:460px;margin-top:1rem;padding:1.1rem;box-shadow:0 1px 2px #18082d0a}.calendar-weekdays{text-align:center;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--color-muted);grid-template-columns:repeat(7,1fr);gap:.35rem;font-size:.68rem;display:grid}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:.35rem;margin-top:.4rem;display:grid}.calendar-cell{aspect-ratio:1;border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;border-radius:10px;justify-content:flex-end;align-items:flex-start;padding:.35rem .4rem;font-size:.8rem;font-weight:500;transition:transform .1s,box-shadow .15s;display:flex}.calendar-cell:hover{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-text);box-shadow:0 4px 12px -6px #7c2fc966}.calendar-cell-empty{cursor:default;background:0 0;border:none}.calendar-cell-empty:hover{box-shadow:none}.calendar-cell.calendar-color-verde{background:#e5f5e7;border-color:#bfe6c3}.calendar-cell.calendar-color-laranja{background:#fff2d6;border-color:#ffdd94}.calendar-cell.calendar-color-vermelho{background:#fde4e3;border-color:#f6b7b4}.calendar-cell.calendar-color-roxo{background:var(--color-primary-tint);border-color:var(--color-primary-tint-border)}.calendar-cell.calendar-color-amarelo{background:#fdf6cf;border-color:#f4e58a}.calendar-cell.calendar-color-verde:hover{background:#d3eed7}.calendar-cell.calendar-color-laranja:hover{background:#ffe9b8}.calendar-cell.calendar-color-vermelho:hover{background:#f9d3d1}.calendar-cell.calendar-color-roxo:hover{background:#ecdcfa}.calendar-cell.calendar-color-amarelo:hover{background:#f8edaf}.calendar-cell.calendar-color-feriado-nacional{background:var(--color-primary-tint);border-color:var(--color-primary-tint-border)}.calendar-cell.calendar-color-feriado-municipal{background:#e2f4f5;border-color:#a9dfe3}.calendar-cell.calendar-color-feriado-nacional:hover{background:#ecdcfa}.calendar-cell.calendar-color-feriado-municipal:hover{background:#cdeced}.calendar-cell-selected{outline:2px solid var(--color-primary);outline-offset:-2px;box-shadow:0 6px 16px -8px #7c2fc980}.timecard-detail{flex-direction:column;align-items:stretch;gap:.75rem;margin-top:1.25rem;display:flex}.timecard-detail h3{text-transform:capitalize;margin:0;font-size:1.1rem}.day-balance{margin:0;font-size:.95rem}.day-balance-positive strong{color:var(--color-success)}.day-balance-negative strong{color:var(--color-danger)}.timecard-punches{border-top:1px solid var(--color-border);flex-direction:column;gap:.75rem;padding:1rem 0 0;display:flex}.timecard-folga-requests{flex-direction:column;gap:.6rem;display:flex}.folga-request{border-left:4px solid var(--color-border-strong);background:var(--color-surface-2);border-radius:10px;flex-direction:column;gap:.15rem;padding:.7rem 1rem;font-size:.9rem;display:flex}.folga-request-pendente{border-left-color:#fdd835}.folga-request-aprovado{border-left-color:var(--color-primary)}.folga-request-reprovado{border-left-color:var(--color-danger)}.punch-row{align-items:flex-start;gap:1rem;display:flex}.punch-photo{object-fit:cover;border:1px solid var(--color-border);border-radius:10px;flex-shrink:0;width:72px;height:72px}.solicitacao-anexo{flex-direction:column;align-items:flex-start;gap:.25rem;width:fit-content;margin-top:.35rem;display:inline-flex}.solicitacao-anexo img{border:1px solid var(--color-border);object-fit:cover;border-radius:10px;max-width:220px;max-height:160px}.punch-photo-empty{color:var(--color-muted);background:var(--color-surface-2);text-align:center;justify-content:center;align-items:center;font-size:.7rem;display:flex}.punch-info{flex-direction:column;gap:.15rem;font-size:.9rem;display:flex}.punch-info a{color:var(--color-primary)}.inline-field{gap:.5rem;max-width:100%;margin-top:.35rem;display:flex}.inline-field select,.inline-field input{flex:1;min-width:0}.inline-field button{white-space:nowrap;flex-shrink:0}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-2);color:var(--color-text)}.avatar-lg{object-fit:cover;color:#fff;background:linear-gradient(150deg, var(--color-primary), var(--color-sidebar-a));border:3px solid var(--color-surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;font-size:2.1rem;font-weight:700;display:flex;box-shadow:0 6px 18px -8px #18082d66}.profile-photo-row{flex-wrap:wrap;align-items:center;gap:1.35rem;display:flex}.profile-photo-row .muted{margin-top:.25rem;display:block}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1408288c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:18px;width:100%;max-width:420px;padding:1.5rem;box-shadow:0 30px 70px -20px #0000008c}.modal h3{margin:0 0 1rem}.crop-stage{background:#140a28;border-radius:14px;width:100%;height:320px;margin-bottom:1rem;position:relative;overflow:hidden}.crop-controls{color:var(--color-muted);align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.crop-controls input[type=range]{flex:1}.modal-actions{justify-content:flex-end;gap:.5rem;display:flex}.holiday-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.holiday-badge{border-radius:999px;width:fit-content;padding:.15rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.holiday-badge-nacional{background:var(--color-primary-tint);color:var(--color-primary)}.holiday-badge-municipal{color:#157179;background:#e2f4f5}:root[data-theme=dark] .holiday-badge-municipal{color:#6fd8e2;background:#123539}.holiday-staff-row{border-bottom:1px solid var(--color-border);padding:.4rem 0}.holiday-staff-row:last-child{border-bottom:none}.holiday-staff-row-actions{align-items:center;gap:.6rem;display:flex}.holiday-suggestion-badge{border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:600}.holiday-suggestion-trabalha,.holiday-suggestion-accepted{background:var(--color-success-tint);color:var(--color-success)}.holiday-suggestion-folga{background:var(--color-surface-2);color:var(--color-muted)}.holiday-suggestion-edited{background:var(--color-warning-tint);color:var(--color-warning)}.holiday-calendar-row{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.holiday-calendar-row .calendar-frame{flex:360px}.holiday-month-list{flex-direction:column;flex:2 420px;align-self:stretch;align-items:stretch;gap:.75rem;margin-top:1rem}.holiday-month-list h3{margin:0;font-size:1rem}.holiday-list{flex-direction:column;gap:.6rem;display:flex}.holiday-list-row{border:1px solid var(--color-border);border-left:4px solid var(--color-border-strong);background:var(--color-surface-2);width:100%;color:var(--color-text);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:.9rem;padding:.7rem .9rem;transition:background .15s,border-color .15s;display:flex}.holiday-list-row:hover{background:var(--color-primary-tint)}.holiday-list-row-nacional{border-left-color:var(--color-primary)}.holiday-list-row-municipal{border-left-color:#1f9aa6}.holiday-list-row-selected{background:var(--color-primary-tint);outline:2px solid var(--color-primary);outline-offset:-2px}.holiday-list-date{flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:3rem;line-height:1.15;display:flex}.holiday-list-date strong{font-size:1.1rem}.holiday-list-date span{text-transform:uppercase;color:var(--color-muted);letter-spacing:.03em;font-size:.68rem}.holiday-list-body{flex-direction:column;gap:.3rem;min-width:0;display:flex}.holiday-list-tags{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.holiday-status-badge{border-radius:999px;width:fit-content;padding:.15rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.holiday-status-confirmed{background:var(--color-success-tint);color:var(--color-success)}.holiday-status-pending{background:var(--color-warning-tint);color:var(--color-warning)}.holiday-staff-groups{flex-wrap:wrap;gap:1rem;width:100%;display:flex}.holiday-staff-group{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:12px;flex-direction:column;flex:260px;gap:.5rem;min-width:0;padding:.75rem;display:flex}.holiday-staff-group-working{border-top:3px solid var(--color-success)}.holiday-staff-group-off{border-top:3px solid var(--color-border-strong)}.holiday-staff-group-header{align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;display:flex}.holiday-staff-group-header .material-symbols-outlined{font-size:1.1rem}.holiday-staff-group-count{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:999px;margin-left:auto;padding:.05rem .55rem;font-size:.75rem;font-weight:700}.holiday-staff-card{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .7rem;transition:border-color .15s,background .15s;display:flex}.holiday-staff-card:hover{border-color:var(--color-primary);background:var(--color-primary-tint)}.holiday-staff-card-main{flex-direction:column;gap:.1rem;min-width:0;display:flex}.holiday-staff-card-icon{color:var(--color-muted);flex-shrink:0;font-size:1.1rem}.holiday-history{flex-direction:column;align-items:stretch;gap:.75rem;margin-top:1rem}.holiday-history h3{margin:0;font-size:1rem}.holiday-history-filters{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.holiday-history-filters label{color:var(--color-muted);flex-direction:column;gap:.3rem;min-width:140px;font-size:.8rem;display:flex}.holiday-history-filters input,.holiday-history-filters select{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:8px;padding:.45rem .6rem;font-family:inherit;font-size:.85rem}.holiday-history-filters button{align-self:flex-end}.holiday-history-table-wrap{border:1px solid var(--color-border);border-radius:12px;width:100%;overflow-x:auto}.holiday-history-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.85rem}.holiday-history-table th,.holiday-history-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.6rem .85rem}.holiday-history-table th{background:var(--color-surface-2);color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700;position:sticky;top:0}.holiday-history-table tbody tr:nth-child(2n){background:var(--color-surface-2)}.holiday-history-table tbody tr:hover{background:var(--color-primary-tint)}.holiday-history-table tbody tr:last-child td{border-bottom:none}.warning-text{color:var(--color-warning);margin:0;font-size:.85rem}.ferias-summary{flex-wrap:wrap;gap:.6rem;margin:1rem 0;display:flex}.ferias-summary-item{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.85rem;display:flex}.ferias-summary-item strong{font-size:1rem}.ferias-summary-item-active{outline:2px solid var(--color-primary);outline-offset:-2px}.ferias-filters{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:1rem;display:flex}.ferias-filters label{color:var(--color-muted);flex-direction:column;gap:.3rem;min-width:160px;font-size:.8rem;display:flex}.ferias-filters input,.ferias-filters select{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:8px;padding:.45rem .6rem;font-family:inherit;font-size:.85rem}.ferias-filters button{align-self:flex-end}.ferias-list{flex-direction:column;gap:.6rem;display:flex}.ferias-list-row{border:1px solid var(--color-border);border-left:4px solid var(--color-border-strong);background:var(--color-surface-2);width:100%;color:var(--color-text);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:.9rem;padding:.7rem .9rem;transition:background .15s,border-color .15s;display:flex}.ferias-list-row:hover{background:var(--color-primary-tint)}.ferias-list-row-selected{background:var(--color-primary-tint);outline:2px solid var(--color-primary);outline-offset:-2px}.ferias-list-row-em_dia{border-left-color:var(--color-success)}.ferias-list-row-a_vencer{border-left-color:var(--color-warning)}.ferias-list-row-vencidas{border-left-color:var(--color-danger)}.ferias-list-row-sem_data_base{border-left-color:var(--color-border-strong)}.ferias-list-body{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.tarefas-iframe-wrap{border:1px solid var(--color-border);background:var(--color-surface);border-radius:16px;height:calc(100vh - 150px);min-height:480px;overflow:hidden}.tarefas-iframe{border:0;width:100%;height:100%}.ferias-list-tags{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ferias-status-badge{border-radius:999px;width:fit-content;padding:.15rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.ferias-status-badge-sem_data_base{background:var(--color-surface-2);color:var(--color-muted)}.ferias-status-badge-em_dia{background:var(--color-success-tint);color:var(--color-success)}.ferias-status-badge-a_vencer{background:var(--color-warning-tint);color:var(--color-warning)}.ferias-status-badge-vencidas{background:var(--color-danger-tint);color:var(--color-danger)}.ferias-tag{background:var(--color-primary-tint);width:fit-content;color:var(--color-primary);border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.ferias-ciclo-card{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:12px;flex-direction:column;gap:.5rem;width:100%;padding:.9rem 1rem;display:flex}.ferias-ciclo-dates{flex-wrap:wrap;gap:1.25rem;font-size:.85rem;display:flex}.ferias-ciclo-dates strong{font-size:.95rem;display:block}.ferias-ciclo-progress{background:var(--color-border);border-radius:999px;width:100%;height:8px;overflow:hidden}.ferias-ciclo-progress-bar{background:var(--color-success);border-radius:999px;height:100%;transition:width .2s}.ferias-history-filters{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.ferias-history-filters label{color:var(--color-muted);flex-direction:column;gap:.3rem;min-width:140px;font-size:.8rem;display:flex}.ferias-history-filters input,.ferias-history-filters select{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:8px;padding:.45rem .6rem;font-family:inherit;font-size:.85rem}.ferias-history-filters button{align-self:flex-end}.ferias-history-table-wrap{border:1px solid var(--color-border);border-radius:12px;width:100%;overflow-x:auto}.ferias-history-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.85rem}.ferias-history-table th,.ferias-history-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.6rem .85rem}.ferias-history-table th{background:var(--color-surface-2);color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700;position:sticky;top:0}.ferias-history-table tbody tr:nth-child(2n){background:var(--color-surface-2)}.ferias-history-table tbody tr:hover{background:var(--color-primary-tint)}.ferias-history-table tbody tr:last-child td{border-bottom:none}.metric-card-warning:before{background:var(--color-warning)}.metric-card-warning .metric-icon{background:var(--color-warning-tint);color:var(--color-warning)}.metric-card-warning .metric-value{color:var(--color-warning)}.offline-note{color:var(--color-muted);font-size:.85rem;font-style:italic}.offline-note-warn{color:var(--color-danger,#b42318);font-style:normal;font-weight:600}.daily-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.daily-datenav,.daily-tools{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.daily-datenav input[type=date]{width:auto}.daily-datenav .icon-only{padding:.35rem .45rem;display:inline-flex}.daily-datelabel{color:var(--color-muted);text-transform:capitalize;margin-left:.25rem;font-size:.9rem}.daily-tools input[type=search]{min-width:220px}.daily-tools select,.daily-tools input{width:auto}.daily-kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6rem;margin-bottom:1rem;display:grid}.daily-kpi{text-align:left;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-left:4px solid var(--kpi-color,var(--color-border-strong));border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:.55rem;padding:.7rem .85rem;font-weight:400;display:grid}.daily-kpi:hover{border-color:var(--kpi-color,var(--color-border-strong));background:var(--color-surface-2);color:var(--color-text)}.daily-kpi.active{background:var(--color-primary-tint);border-color:var(--kpi-color)}.daily-kpi .material-symbols-outlined{color:var(--kpi-color,var(--color-muted));grid-row:span 2;font-size:1.5rem}.daily-kpi-value{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700;line-height:1.1}.daily-kpi-label{color:var(--color-muted);font-size:.75rem}.tone-ok{--kpi-color:var(--color-success)}.tone-warn{--kpi-color:var(--color-warning)}.tone-bad{--kpi-color:var(--color-danger)}.tone-info{--kpi-color:var(--color-primary)}.tone-muted{--kpi-color:var(--color-muted)}.daily-table-wrap{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;width:100%;overflow-x:auto}.daily-table{border-collapse:collapse;width:100%;font-size:.875rem}.daily-table th,.daily-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle;padding:.6rem .8rem}.daily-table th{background:var(--color-surface-2);color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:.72rem;font-weight:700}.daily-table .num{text-align:right;white-space:nowrap}.daily-table .mono{font-family:var(--font-mono);font-size:.82rem}.daily-table .neg,.daily-detail .neg{color:var(--color-danger)}.daily-table .pos{color:var(--color-success)}.daily-row{cursor:pointer}.daily-row:hover,.daily-row.open{background:var(--color-primary-tint)}.daily-emp{flex-direction:column;gap:.1rem;min-width:180px;display:flex}.daily-punches{flex-wrap:wrap;align-items:flex-end;gap:.3rem .9rem;display:flex}.daily-punch{font-family:var(--font-mono);border:1px solid var(--color-border-strong);background:var(--color-surface);white-space:nowrap;border-radius:6px;align-items:center;gap:.15rem;padding:.1rem .4rem;font-size:.8rem;display:inline-flex}.daily-punch.late{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-tint)}.daily-punch.pending{border-color:var(--color-warning);background:var(--color-warning-tint);color:var(--color-warning)}.daily-punch.rejected{opacity:.6;text-decoration:line-through}.daily-punch-tag{font-size:.65rem;font-weight:700;font-family:var(--font-sans)}.daily-punch-icon{vertical-align:middle;font-size:.85rem!important}.daily-badge{white-space:nowrap;color:var(--kpi-color);background:var(--kpi-color);border-radius:999px;margin:.1rem .3rem .1rem 0;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}@supports (color:color-mix(in lab, red, red)){.daily-badge{background:color-mix(in srgb, var(--kpi-color) 14%, transparent)}}.daily-chevron{width:1%;color:var(--color-muted)}.daily-detail>td{background:var(--color-surface-2)}.daily-detail-body{flex-direction:column;gap:.75rem;padding:.25rem 0;display:flex}.daily-detail-punches{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem;display:grid}.daily-detail-punch{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;gap:.75rem;padding:.6rem;display:flex}.daily-detail-punch img,.daily-detail-nophoto{object-fit:cover;border-radius:8px;flex-shrink:0;width:72px;height:72px}.daily-detail-nophoto{color:var(--color-muted);background:var(--color-surface-2);border:1px dashed var(--color-border-strong);justify-content:center;align-items:center;font-size:.72rem;display:flex}.daily-detail-info{flex-direction:column;gap:.15rem;min-width:0;font-size:.82rem;display:flex}.daily-detail-info a{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.daily-detail-actions{gap:.4rem;margin-top:.25rem;display:flex}.daily-detail-actions button{padding:.25rem .7rem;font-size:.8rem}.daily-detail-notes{margin:0;padding-left:1.1rem;font-size:.85rem}.daily-detail-links{gap:1rem;font-size:.85rem;display:flex}.daily-legend{margin-top:.75rem}.daily-legend .daily-punch{font-size:.72rem}.daily-jornada span{white-space:nowrap;display:block}.daily-punches-cell{min-width:230px}.daily-detail-punch.rejected{opacity:.6}.search-employee{min-width:420px;padding:.6rem}.search-employee-head{border-bottom:1px solid var(--color-border);align-items:center;gap:.6rem;margin-bottom:.6rem;padding-bottom:.6rem;display:flex}.search-employee-head .search-result-text{flex:1;min-width:0}.search-employee-banco{font-family:var(--font-mono);flex-direction:column;align-items:flex-end;font-size:.85rem;display:flex}.search-employee-banco .muted{font-family:var(--font-sans);font-size:.7rem}.search-employee-banco .neg{color:var(--color-danger)}.search-employee-actions{grid-template-columns:repeat(2,1fr);gap:.4rem;display:grid}.search-employee-actions button{justify-content:flex-start;align-items:center;gap:.4rem;padding:.45rem .6rem;font-size:.85rem;display:inline-flex}.search-employee-actions .material-symbols-outlined{color:var(--color-primary);font-size:1.1rem}.filter-chip-row{margin:0 0 .75rem}.filter-chip{background:var(--color-primary-tint);border:1px solid var(--color-primary-tint-border);border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .3rem .2rem .7rem;font-size:.85rem;display:inline-flex}.filter-chip button{color:var(--color-muted);background:0 0;border:none;padding:.1rem;display:inline-flex}.filter-chip .material-symbols-outlined{font-size:1rem}.daily-pending-elsewhere{background:var(--color-warning-tint);color:var(--color-warning);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.6rem .8rem;font-size:.875rem;display:flex}.daily-pending-elsewhere button{background:var(--color-surface);color:var(--color-warning);border:1px solid var(--color-warning);border-radius:999px;padding:.15rem .6rem;font-size:.8rem}.day-note{border:1px dashed var(--color-border-strong);background:var(--color-surface);border-radius:10px;align-items:flex-start;gap:.6rem;padding:.6rem .75rem;font-size:.875rem;display:flex}.day-note>.material-symbols-outlined{color:var(--color-primary);font-size:1.2rem}.day-note-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.day-note-text{white-space:pre-wrap}.day-note button{white-space:nowrap;padding:.25rem .7rem;font-size:.8rem}.day-note-editing{flex-direction:column;align-items:stretch}.day-note-editing textarea{resize:vertical;width:100%;font:inherit}.day-note-actions{gap:.4rem;display:flex}.calendar-cell{position:relative}.calendar-note-dot{background:var(--color-primary);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.folga-periodo{border:1px solid var(--color-border);border-radius:10px;flex-wrap:wrap;gap:.4rem 1.2rem;padding:.6rem .8rem;display:flex}.folga-periodo legend{color:var(--color-muted);padding:0 .3rem;font-size:.85rem}.folga-horas{flex-wrap:wrap;flex-basis:100%;align-items:flex-end;gap:.75rem;display:flex}.folga-horas input[type=time]{width:auto}.folga-edit{border-top:1px solid var(--color-border);flex-direction:column;gap:.6rem;margin-top:.6rem;padding-top:.6rem;display:flex}.folga-request-actions{margin-top:.4rem}.folga-request-actions button{padding:.25rem .8rem;font-size:.8rem}.holiday-work{background:var(--color-warning-tint);border:1px solid var(--color-warning);border-radius:10px;flex-wrap:wrap;align-items:flex-start;gap:.6rem;padding:.6rem .75rem;font-size:.875rem;display:flex}.holiday-work-aprovado{background:var(--color-success-tint);border-color:var(--color-success)}.holiday-work-rejeitado{background:var(--color-surface-2);border-color:var(--color-border-strong)}.holiday-work>.material-symbols-outlined{color:var(--color-warning)}.holiday-work-aprovado>.material-symbols-outlined{color:var(--color-success)}.holiday-work-body{flex-direction:column;flex:1;gap:.15rem;min-width:220px;display:flex}.holiday-work-actions{flex-wrap:wrap;gap:.4rem;display:flex}.holiday-work-actions button{padding:.25rem .7rem;font-size:.8rem}.rpt-head h1{margin:0}.rpt-head p{margin:.15rem 0 1rem}.rpt-filters{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:stretch;gap:.9rem;margin-bottom:1rem;display:grid}.rpt-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;display:flex;overflow:visible}.rpt-block.wide{grid-column:1/-1}.rpt-block-head{background:var(--color-surface-2);border-bottom:1px solid var(--color-border);border-radius:12px 12px 0 0;align-items:center;gap:.5rem;padding:.65rem .95rem;display:flex}.rpt-block-head .material-symbols-outlined{color:var(--color-primary);font-size:20px}.rpt-block-head h2{margin:0;font-size:.92rem;font-weight:700}.rpt-block-aside{margin-left:auto}.rpt-block-body{flex:1;align-content:start;gap:.9rem;padding:.95rem;display:grid}.rpt-field{align-content:start;gap:.35rem;display:grid;position:relative}.rpt-field.wide{grid-column:1/-1}.rpt-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted);flex-wrap:wrap;align-items:baseline;gap:.75rem;font-size:.72rem;font-weight:700;display:flex}.rpt-presets{text-transform:none;letter-spacing:0;gap:.6rem;font-weight:500;display:inline-flex}.rpt-chips{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:.4rem;display:flex}.rpt-chips button{box-sizing:border-box;white-space:nowrap;background:var(--color-surface);height:2rem;color:var(--color-muted);border:1px solid var(--color-border-strong);border-radius:999px;justify-content:center;align-items:center;gap:.35rem;margin:0;padding:0 .8rem;font-size:.82rem;font-weight:500;line-height:1;display:inline-flex}.rpt-chips button .material-symbols-outlined{font-size:16px;line-height:1}.rpt-chips button:hover{border-color:var(--color-primary);color:var(--color-primary)}.rpt-chips button.on{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.rpt-range{align-items:center;gap:.6rem;margin-top:.4rem;display:flex}.rpt-types{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:.8rem 1.2rem;display:grid}.rpt-type-group{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:10px;align-content:start;gap:.7rem;padding:.75rem .85rem;display:grid}.rpt-subhead{border-bottom:1px solid var(--color-border);align-items:center;gap:.45rem;padding-bottom:.55rem;display:flex}.rpt-subhead .material-symbols-outlined{color:var(--color-primary);font-size:18px}.rpt-subhead h3{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text);margin:0;font-size:.8rem;font-weight:700}.rpt-subcount{color:var(--color-muted);font-size:.72rem;font-family:var(--font-mono)}.rpt-subhead .btn-link{margin-left:auto}.rpt-select{background:var(--color-surface);width:100%;color:var(--color-muted);border:1px solid var(--color-border-strong);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;font-weight:500;display:flex}.rpt-select.has-value{color:var(--color-text);border-color:var(--color-primary)}.rpt-popover{z-index:20;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:10px;gap:.5rem;margin-top:4px;padding:.6rem;display:grid;position:absolute;top:100%;left:0;right:0;box-shadow:0 10px 30px #0000002e}.rpt-popover-actions{justify-content:space-between;display:flex}.rpt-popover-list{gap:.1rem;max-height:240px;display:grid;overflow-y:auto}.rpt-popover-list label{cursor:pointer;align-items:center;gap:.5rem;padding:.3rem .2rem;font-size:.88rem;display:flex}.rpt-popover-list label:hover{background:var(--color-surface-2)}.btn-link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:.82rem;font-weight:600}.rpt-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.6rem;display:flex}.rpt-summary{margin:.2rem 0 .8rem}.rpt-toolbar{flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:.8rem;display:flex}.rpt-toolbar label{color:var(--color-muted);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.rpt-toolbar input[type=search]{min-width:260px}.rpt-table .nowrap{white-space:nowrap}.rpt-table .th-sort{color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:0}.rpt-badge{white-space:nowrap;color:var(--kpi-color);background:var(--kpi-color);border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .55rem;font-size:.78rem;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.rpt-badge{background:color-mix(in srgb, var(--kpi-color) 12%, transparent)}}.rpt-badge .material-symbols-outlined{font-size:15px}.rpt-status{font-size:.8rem;font-weight:600}.rpt-group-row{cursor:pointer;background:var(--color-surface-2)}.rpt-group-row td{padding:.5rem .8rem}.rpt-group-row .material-symbols-outlined{vertical-align:middle;margin-right:.2rem;font-size:20px}.rpt-pager{justify-content:center;align-items:center;gap:1rem;margin-top:.8rem;display:flex}@media print{.rpt-filters,.rpt-toolbar,.rpt-pager,.daily-kpis{display:none}}.emp-form{flex-direction:column;gap:.9rem;margin-bottom:1.5rem;display:flex}.emp-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;overflow:visible}.emp-block-head{background:var(--color-surface-2);border-bottom:1px solid var(--color-border);border-radius:12px 12px 0 0;align-items:center;gap:.5rem;padding:.65rem 1rem;display:flex}.emp-block-head .material-symbols-outlined{color:var(--color-primary);font-size:20px}.emp-block-head h3{margin:0;font-size:.92rem;font-weight:700}.emp-block-body{gap:.9rem;padding:1rem;display:grid}.emp-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.9rem 1rem;display:grid}.emp-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.emp-field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.emp-field input,.emp-field select{width:100%}.emp-narrow{max-width:280px}.emp-label{color:var(--color-text);font-size:.82rem;font-weight:600}.emp-hint{color:var(--color-muted);align-items:center;gap:.3rem;font-size:.8rem;line-height:1.35;display:inline-flex}.emp-hint .material-symbols-outlined{font-size:15px}.emp-info{cursor:help;color:var(--color-primary)}.emp-inline{align-items:center;gap:.5rem;display:flex}.emp-inline select,.emp-inline input{flex:1;width:auto;min-width:0}.emp-ghost{color:var(--color-text);border:1px solid var(--color-border-strong);white-space:nowrap;background:0 0;flex-shrink:0;font-weight:500}.emp-ghost:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:0 0}.emp-switch-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.emp-switch-row>div{flex-direction:column;gap:.15rem;display:flex}.emp-sep{border-top:1px solid var(--color-border)}.emp-switch{background:var(--color-border-strong);cursor:pointer;border:none;border-radius:12px;flex:none;align-items:center;width:42px;height:24px;padding:2px;transition:background .15s;display:flex}.emp-switch span{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s}.emp-switch.on{background:var(--color-primary)}.emp-switch.on span{transform:translate(18px)}.emp-switch:hover:not(:disabled){filter:none}.emp-jornada{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem 1.5rem;display:grid}.emp-periodos{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.emp-periodo-row{align-items:center;gap:.5rem;display:flex}.emp-periodo-row input{width:auto}.emp-empty{color:var(--color-muted);padding:.35rem 0;font-size:.85rem}.emp-icon-btn{width:34px;height:34px;color:var(--color-muted);border:1px solid var(--color-border-strong);background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.emp-icon-btn:hover:not(:disabled){color:var(--color-danger);border-color:var(--color-danger);background:0 0}.emp-icon-btn .material-symbols-outlined{font-size:20px}.emp-actions{z-index:5;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;display:flex;position:sticky;bottom:.75rem;box-shadow:0 6px 20px #0000002e}.emp-actions-buttons{gap:.5rem;display:flex}@media (width<=760px){.emp-grid,.emp-grid.three,.emp-jornada{grid-template-columns:minmax(0,1fr)}.emp-actions-who{display:none}.emp-actions{justify-content:flex-end}}.card-list .card[id^=func-]{scroll-margin-top:5rem}.emp-vignette{z-index:4;pointer-events:none;background:radial-gradient(#0000 52%,#0a041880 100%);animation:.25s ease-out emp-fade-in;position:fixed;inset:0}@keyframes emp-fade-in{0%{opacity:0}to{opacity:1}}.card-list.is-focus>.card:not(.editing-card){opacity:.4;filter:saturate(.6);transition:opacity .25s,filter .25s}.card-list.is-focus>.card:not(.editing-card):hover{opacity:.75}.card-list>.card.editing-card,.emp-form{z-index:6;position:relative}.emp-form{background:var(--color-bg);box-shadow:0 0 0 2px var(--color-primary), 0 0 0 8px #7c2fc92e, 0 18px 48px #0a041859;border-radius:18px;padding:.9rem}@supports (color:color-mix(in lab, red, red)){.emp-form{box-shadow:0 0 0 2px var(--color-primary), 0 0 0 8px color-mix(in srgb, var(--color-primary) 18%, transparent), 0 18px 48px #0a041859}}@media (prefers-reduced-motion:reduce){.emp-vignette{animation:none}.card-list.is-focus>.card:not(.editing-card){transition:none}}.daily-pair{flex-direction:column;gap:.2rem;display:flex}.daily-pair-sum{font-family:var(--font-mono);color:var(--color-muted);font-size:.74rem;font-weight:700;line-height:1}.daily-pair-bar{align-items:center;gap:0;display:flex}.daily-pair-link{border-top:1.5px solid var(--color-border-strong);width:10px}.daily-of{color:var(--color-muted);font-size:.74rem}.pw-rules{color:var(--color-muted);flex-wrap:wrap;gap:.25rem 1rem;margin:.35rem 0 0;padding:0;font-size:.8rem;list-style:none;display:flex}.pw-rules li{align-items:center;gap:.3rem;display:inline-flex}.pw-rules li.ok{color:var(--color-success)}.pw-rules .material-symbols-outlined{font-size:16px}.temp-password{border:1px dashed var(--color-primary);background:var(--color-primary-tint);border-radius:10px;flex-direction:column;flex-basis:100%;gap:.5rem;margin-top:.25rem;padding:.85rem 1rem;display:flex}.temp-password-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.temp-password code{font-family:var(--font-mono);letter-spacing:.06em;background:var(--color-surface);border:1px solid var(--color-border-strong);-webkit-user-select:all;user-select:all;border-radius:8px;padding:.35rem .7rem;font-size:1.15rem;font-weight:700}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
