:root{color-scheme:light;font-family:Aptos,Trebuchet MS,sans-serif;color:#4d3529;background:#f7efe5;--cream-50: #fcf6ef;--cream-100: #f6ecdf;--cream-200: #eadbc8;--cream-300: #dcc7af;--brown-900: #4d3529;--brown-800: #664638;--brown-700: #7b5947;--brown-600: #93735e;--terracotta-700: #a9543b;--terracotta-600: #bd6649;--terracotta-500: #cf7a58;--terracotta-200: #efd1bf;--terracotta-100: #f7e5db;--olive-600: #6c7c5f;--olive-100: #dde5d7;--brick-600: #9c4f41;--brick-100: #efd9d3;--shadow-soft: 0 24px 60px rgba(92, 63, 45, .14)}*{box-sizing:border-box}body{min-height:100vh;margin:0;background:radial-gradient(circle at top left,rgba(207,122,88,.2),transparent 30%),radial-gradient(circle at bottom right,rgba(123,89,71,.1),transparent 24%),linear-gradient(180deg,#fff8f0,#f4e7d8)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}a{color:inherit;text-decoration:none}.loading-screen,.auth-layout{min-height:100vh;display:grid;place-items:center;padding:32px}.auth-layout{grid-template-columns:repeat(auto-fit,minmax(320px,460px));gap:24px}.auth-card,.panel-card,.table-card,.calendar-card{background:#fffaf4f0;border:1px solid rgba(102,70,56,.12);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft)}.secondary-card{align-self:start}.eyebrow{margin:0 0 8px;color:var(--terracotta-700);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.muted{color:var(--brown-600)}.error-text{color:var(--brick-600)}.success-text{color:var(--olive-600)}.form-stack,.page-stack,.form-grid,.split-grid,.metrics-grid,.mini-grid{display:grid;gap:16px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.mini-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.split-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}label{display:grid;gap:8px;font-weight:600}input,select,textarea{width:100%;border:1px solid rgba(102,70,56,.16);border-radius:14px;padding:12px 14px;background:#fffbf6fa;color:var(--brown-900)}.primary-button,.secondary-button,.ghost-button,.inline-button,.dashboard-action{border:none;border-radius:999px;padding:12px 18px;font-weight:700}.primary-button{background:var(--brown-900);color:var(--cream-50)}.secondary-button{background:var(--terracotta-600);color:var(--cream-50)}.ghost-button{background:var(--cream-100);color:var(--brown-900)}.inline-button,.dashboard-action{padding:8px 12px;font-size:.85rem}.approve{background:var(--olive-100);color:var(--olive-600)}.reject{background:var(--brick-100);color:var(--brick-600)}.app-shell{min-height:100vh;display:grid;height:100vh;grid-template-columns:300px 1fr}.sidebar{display:grid;grid-template-rows:auto 1fr auto;gap:28px;padding:26px 20px;background:linear-gradient(180deg,#5a382c,#744b3b);border-right:1px solid rgba(102,70,56,.18);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--cream-50);position:sticky;top:0;height:100vh}.brand-block{display:flex;align-items:center;gap:14px}.brand-mark{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:18px;background:linear-gradient(180deg,#f0d2bd,#cf7a58);color:var(--brown-900);font-weight:800;letter-spacing:.08em}.brand-title,.dashboard-card h2,.page-header h1{margin:0}.brand-subtitle,.sidebar-profile p,.event-row p{margin:4px 0 0}.brand-subtitle{color:#fcf6efb8}.sidebar-stack{display:grid;align-content:start;gap:20px}.nav-list{display:grid;gap:10px}.nav-list a{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;color:#fcf6efc7;font-weight:600;transition:background .2s ease,color .2s ease,transform .2s ease}.nav-list a.active{background:#fcf6ef29;color:var(--cream-50)}.nav-list a:hover{transform:translate(2px)}.sidebar-logout{border:1px solid rgba(252,246,239,.18);border-radius:16px;background:#fff8f0f5;color:var(--brown-900);padding:12px 14px;font-weight:700}.sidebar-footer{display:grid;gap:14px}.sidebar-profile{display:flex;align-items:center;gap:14px;padding:14px;border-radius:20px;background:#fff8f01f}.profile-avatar{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:999px;background:linear-gradient(180deg,#f5dfce,#d89a7e);color:var(--brown-900);font-weight:800}.content{padding:18px 28px 28px;overflow-y:auto;height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.topbar-search{position:relative;flex:1;display:block}.topbar-search span{position:absolute;left:-9999px}.topbar-search input{border-radius:18px;border:none;background:#fff8f0f5;padding:16px 18px;box-shadow:inset 0 0 0 1px #6646381a}.topbar-actions{display:flex;align-items:center;gap:16px}.topbar-alert{position:relative;width:46px;height:46px;border:1px solid rgba(102,70,56,.12);border-radius:16px;background:#fff8f0fa;color:var(--brown-700);font-weight:800}.topbar-alert-dot{position:absolute;top:10px;right:10px;width:9px;height:9px;border-radius:999px;background:var(--terracotta-600)}.topbar-cta{display:inline-flex;align-items:center;justify-content:center;min-width:186px;border-radius:18px;padding:14px 18px;background:linear-gradient(180deg,var(--terracotta-500) 0%,var(--terracotta-700) 100%);color:var(--cream-50);font-weight:800;box-shadow:0 14px 30px #a9543b3d}.attendance-shell{min-height:100vh;background:radial-gradient(circle at top right,rgba(242,117,36,.08),transparent 22%),linear-gradient(180deg,#fbf7f2,#f6efe7);color:#1e1510}.attendance-topbar{display:grid;grid-template-columns:auto minmax(280px,1fr) auto;gap:24px;align-items:center;padding:16px 28px;background:#fff9f4f0;border-bottom:1px solid rgba(169,84,59,.16);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.attendance-brand-block{display:flex;align-items:center;gap:16px}.attendance-brand-mark{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(180deg,#ff8b39,#f27524);box-shadow:0 16px 28px #f275243d;color:#fff}.attendance-brand-mark svg,.attendance-topbar-search svg,.attendance-icon-button svg,.attendance-glyph svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.attendance-brand-mark svg{fill:currentColor;stroke:none}.attendance-brand-block h1,.attendance-panel-header h2,.attendance-card-header h2{margin:0}.attendance-brand-block h1{font-size:1.25rem;line-height:1.1}.attendance-brand-block p,.attendance-card-header p,.attendance-panel-header p,.attendance-system-card p,.attendance-analysis-card p{margin:4px 0 0}.attendance-brand-block p{color:#9b6c51;font-size:.9rem}.attendance-topbar-search{position:relative;display:block}.attendance-topbar-search span,.attendance-inline-search span{position:absolute;left:-9999px}.attendance-topbar-search svg,.attendance-inline-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#9f6b49}.attendance-topbar-search input,.attendance-inline-search input{padding-left:50px;border-radius:16px;border:none;background:#f1e8e1;color:#7d5237;box-shadow:inset 0 0 0 1px #a9543b14}.attendance-topbar-actions{display:flex;align-items:center;gap:14px}.attendance-icon-button{display:inline-grid;place-items:center;width:42px;height:42px;border:none;border-radius:999px;background:transparent;color:#9f6b49}.attendance-user-chip{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:999px;border:1px solid rgba(242,117,36,.32);background:#ffede1eb;color:#f27524;font-weight:800}.attendance-shell-body{display:grid;grid-template-columns:284px minmax(0,1fr);min-height:calc(100vh - 81px)}.attendance-sidebar{display:flex;flex-direction:column;gap:22px;padding:28px 18px 22px;background:#fffaf6c2;border-right:1px solid rgba(169,84,59,.12)}.attendance-sidebar-panel,.attendance-system-card,.attendance-main-chart-card,.attendance-table-card,.attendance-density-card,.attendance-report-card,.attendance-stat-card{background:#fffbf7f5;border:1px solid rgba(188,135,101,.2);box-shadow:0 18px 36px #7a533914}.attendance-sidebar-panel{border-radius:24px;padding:10px 12px}.attendance-sidebar-title{margin:8px 10px 18px;color:#9f6b49;font-size:.82rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.attendance-nav-list{display:grid;gap:8px}.attendance-nav-link{display:flex;align-items:center;gap:12px;padding:14px;border-radius:18px;color:#2a1a11;font-size:1rem;font-weight:700;transition:transform .18s ease,background .18s ease,color .18s ease}.attendance-nav-link:hover{transform:translate(2px)}.attendance-nav-link.active{background:linear-gradient(180deg,#ff8a36,#f27524);color:#fff;box-shadow:0 18px 28px #f275243d}.attendance-glyph{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f6e8dcd6;color:#7f5439;flex-shrink:0}.attendance-nav-link.active .attendance-glyph{background:#ffffff29;color:#fff}.attendance-system-card{margin-top:auto;border-radius:22px;padding:20px}.attendance-system-card h2{margin:0;font-size:1.35rem}.attendance-system-bar{height:8px;margin:18px 0 12px;border-radius:999px;background:#eadfd7;overflow:hidden}.attendance-system-bar span{display:block;width:80%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f27524,#d76117)}.attendance-signout-button{width:100%;margin-top:18px;border:none;border-radius:16px;padding:12px 16px;background:#2e211b;color:#fff7f2;font-weight:700}.attendance-content{padding:28px 32px 36px;overflow:auto}.attendance-dashboard{display:grid;gap:22px}.attendance-panel-header,.attendance-card-header,.attendance-table-header,.attendance-table-tools,.attendance-chart-toolbar,.attendance-chart-legend,.attendance-header-controls,.attendance-range-switch,.attendance-stat-value-row,.attendance-density-row,.attendance-team-overview-row{display:flex;align-items:center;gap:14px;justify-content:space-between;flex-wrap:wrap}.attendance-panel-header{align-items:flex-start}.attendance-kicker{margin:0 0 10px;color:#a86c44;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.attendance-panel-header h2{font-size:2rem}.attendance-panel-header p{max-width:640px;color:#95684d}.attendance-header-controls{justify-content:flex-end}.attendance-range-switch{padding:4px;border-radius:999px;background:#f1e8e1f0}.attendance-range-switch button{border:none;border-radius:999px;padding:10px 14px;background:transparent;color:#9f6b49;font-weight:700}.attendance-range-switch button.active{background:#fff;color:#2a1a11;box-shadow:0 8px 18px #7a53391a}.attendance-header-controls select{min-width:210px;border-radius:16px;border:1px solid rgba(188,135,101,.22);background:#fffbf7f5}.attendance-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px}.attendance-demo-banner{display:grid;gap:6px;padding:18px 20px;border-radius:20px;background:#fff4ebeb;border:1px solid rgba(242,117,36,.18);color:#915d3c}.attendance-demo-banner strong{color:#d86a1f;font-size:.92rem;letter-spacing:.04em;text-transform:uppercase}.attendance-demo-banner p{margin:0}.attendance-stat-card{border-radius:22px;padding:22px 24px}.attendance-stat-label{display:block;min-height:48px;color:#9a6b4f;font-size:.95rem;line-height:1.35}.attendance-stat-card strong{font-size:2rem;line-height:1}.attendance-delta{font-size:.95rem;font-weight:700}.attendance-delta.is-good{color:#149445}.attendance-delta.is-bad{color:#eb4c3d}.attendance-delta.is-neutral{color:#9f6b49}.attendance-delta.is-warm{color:#f27524}.attendance-main-chart-card,.attendance-table-card,.attendance-density-card,.attendance-report-card{border-radius:24px;padding:24px 28px}.attendance-card-header h2{font-size:1.25rem}.attendance-card-header p{color:#a26f50}.attendance-chart-legend span{display:inline-flex;align-items:center;gap:10px;color:#a26f50;font-weight:600}.attendance-chart-toolbar{justify-content:flex-end}.attendance-week-selector{display:inline-flex;align-items:center;gap:10px;padding:8px 10px;border-radius:18px;background:#f7f1ecd6}.attendance-week-copy{display:grid;gap:2px;min-width:154px}.attendance-week-copy strong{color:#2a1a11;font-size:.96rem}.attendance-week-copy span,.attendance-week-calendar{color:#9f6b49;font-size:.82rem}.attendance-week-arrow{width:38px;height:38px;border:none;border-radius:999px;background:#fff;color:#7f5439;font-size:1.05rem;font-weight:800;box-shadow:0 8px 18px #7a533914}.attendance-week-arrow:disabled{background:#fff9;color:#7f54396b}.attendance-week-calendar{display:grid;gap:6px;font-weight:700}.attendance-week-calendar input{min-width:170px;border-radius:14px;border:1px solid rgba(188,135,101,.2);background:#fffbf7f5}.attendance-chart-legend i{display:inline-block;width:14px;height:14px;border-radius:999px}.attendance-chart-legend .current i{background:#f27524}.attendance-chart-legend .previous i{border:1.5px solid #a26f50;background:transparent}.attendance-chart-frame{margin-top:12px}.attendance-chart{width:100%;height:auto;display:block}.attendance-chart-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.attendance-chart-line.current{stroke:#f27524;stroke-width:6}.attendance-chart-line.previous{stroke:#ad7c5d59;stroke-width:4;stroke-dasharray:12 10}.attendance-chart-dot{fill:#f27524;stroke:#fff;stroke-width:3}.attendance-chart-axis{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-top:-6px;padding:0 8px}.attendance-chart-axis span{color:#9f6b49;font-size:.92rem;font-weight:800;text-align:center}.attendance-bottom-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(290px,.55fr);gap:22px;align-items:start}.attendance-table-tools{justify-content:flex-end}.attendance-inline-search{position:relative;min-width:min(100%,320px)}.attendance-view-link{color:#f27524;font-weight:800}.attendance-table-wrap{overflow-x:auto}.attendance-live-table{min-width:760px}.attendance-live-table thead th{padding:16px 12px;color:#a26f50;background:#f7f1ecd6;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}.attendance-live-table tbody td{padding:20px 12px;font-size:1rem;color:#2a1a11}.attendance-person-cell{display:flex;align-items:center;gap:14px}.attendance-person-avatar{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:999px;background:#f6ece5;color:#d9712d;font-weight:800}.attendance-state-pill{display:inline-flex;align-items:center;justify-content:center;min-width:92px;padding:7px 12px;border-radius:999px;font-size:.82rem;font-weight:800}.attendance-state-pill.is-presente{background:#a9f0c766;color:#118143;box-shadow:inset 0 0 0 1px #1181432e}.attendance-state-pill.is-tarde{background:#ffe1bda8;color:#d3681d;box-shadow:inset 0 0 0 1px #d3681d29}.attendance-state-pill.is-ausente{background:#ffd6d69e;color:#d93f34;box-shadow:inset 0 0 0 1px #d93f3429}.attendance-side-column{display:grid;gap:22px}.attendance-density-list,.attendance-report-stats,.attendance-team-overview-list{display:grid;gap:16px}.attendance-density-list{margin-top:12px}.attendance-density-row span:first-child,.attendance-report-stat span,.attendance-team-overview span{color:#9f6b49;font-weight:700}.attendance-density-bar{flex:1;min-width:120px;height:14px;border-radius:999px;background:#e8ded6d6;overflow:hidden}.attendance-density-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f2b18c,#f27524)}.attendance-analysis-card{margin-top:24px;border-radius:18px;padding:18px 18px 16px;background:#fdf4eee6;border:1px solid rgba(242,117,36,.14)}.attendance-analysis-card strong{color:#f27524;font-size:.92rem;text-transform:uppercase}.attendance-report-stat{display:grid;gap:6px}.attendance-report-stat strong,.attendance-team-overview-row strong{font-size:1.4rem}.attendance-team-overview{display:grid;gap:14px;margin-top:4px}.attendance-team-overview-row{padding-top:12px;border-top:1px solid rgba(169,84,59,.1);align-items:flex-start}.attendance-team-overview-row strong{font-size:1rem}.attendance-team-overview-row span{color:#7f5d48;font-size:.92rem;text-align:right}.page-header,.section-heading,.filters-row{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}.panel-header{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.search-input{max-width:320px}.metric-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;background:#fffbf6fa;border-radius:24px;padding:24px;border:1px solid rgba(102,70,56,.08);box-shadow:0 18px 32px #5c3f2d14}.metric-badge{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:999px;font-weight:800}.metric-badge svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.metric-copy{display:grid;gap:4px}.metric-label-row{display:flex;align-items:center;gap:8px}.metric-label,.metric-helper{display:block;color:var(--brown-600)}.metric-value{display:block;font-size:2.2rem;line-height:1}.metric-tooltip{position:relative;display:inline-flex;align-items:center}.metric-tooltip-trigger{width:22px;height:22px;border:1px solid rgba(102,70,56,.18);border-radius:999px;background:#fff8f0eb;color:var(--brown-700);font-size:.75rem;font-weight:700;line-height:1;display:inline-grid;place-items:center;cursor:help}.metric-tooltip-content{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);min-width:220px;max-width:280px;padding:10px 12px;border-radius:12px;background:#3f271ef5;color:var(--cream-50);font-size:.82rem;line-height:1.4;box-shadow:0 16px 28px #3f271e2e;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .16s ease,transform .16s ease,visibility .16s ease;z-index:20}.metric-tooltip-content:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:rgba(63,39,30,.96) transparent transparent transparent}.metric-tooltip:hover .metric-tooltip-content,.metric-tooltip:focus-within .metric-tooltip-content{opacity:1;visibility:visible;transform:translate(-50%) translateY(-2px)}.tone-orange .metric-badge{background:var(--terracotta-100);color:var(--terracotta-700)}.tone-blue .metric-badge{background:var(--cream-200);color:var(--brown-800)}.tone-red .metric-badge{background:var(--brick-100);color:var(--brick-600)}.tone-green .metric-badge{background:var(--olive-100);color:var(--olive-600)}.tone-neutral .metric-badge{background:var(--cream-100);color:var(--brown-900)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid rgba(102,70,56,.08)}.actions-cell{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:700}.status-pending{background:var(--terracotta-100);color:var(--terracotta-700)}.status-approved{background:var(--olive-100);color:var(--olive-600)}.status-rejected,.status-cancelled{background:var(--brick-100);color:var(--brick-600)}.compact-table{display:grid;gap:10px}.compact-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(102,70,56,.08)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.calendar-head{color:var(--brown-600);font-size:.85rem}.calendar-cell{min-height:140px;padding:12px;border-radius:18px;background:#fffbf6f5;border:1px solid rgba(102,70,56,.08)}.calendar-cell.is-muted{opacity:.42}.calendar-date{font-weight:700}.calendar-events{margin-top:10px;display:grid;gap:6px}.calendar-event,.calendar-more,.holiday-chip{display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:4px 8px;border-radius:999px;font-size:.78rem}.calendar-event{border-left:4px solid;background:#66463814}.calendar-more{background:#66463814;color:var(--brown-600)}.holiday-chip{margin-top:8px;background:var(--brick-100);color:var(--brick-600)}.upload-field input{border:none;padding:0}.dashboard-page{gap:22px}.dashboard-header{margin-bottom:4px}.dashboard-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,.95fr);gap:20px}.dashboard-side-column{display:grid;gap:20px}.dashboard-card{padding:26px 28px}.dashboard-card-main{min-width:0}.dashboard-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.dashboard-link{color:var(--terracotta-700);font-weight:700}.dashboard-link.subtle{color:var(--brown-700)}.dashboard-table-wrap,.availability-scroll{overflow-x:auto}.dashboard-table th{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brown-700);background:var(--cream-100)}.dashboard-table td,.dashboard-table th{padding:18px 14px}.employee-cell{display:flex;align-items:center;gap:14px}.employee-avatar{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:999px;background:linear-gradient(180deg,#f1dfd1,#d3ad93);color:var(--brown-900);font-weight:800}.quick-stat-card{display:grid;gap:12px;padding:20px;border-radius:22px;background:#f9f1e8f5;border:1px solid rgba(102,70,56,.08)}.quick-stat-label{color:var(--brown-700);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.quick-stat-value{font-size:2.2rem}.quick-stat-bar{height:8px;border-radius:999px;background:var(--cream-200);overflow:hidden}.quick-stat-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--terracotta-500) 0%,var(--terracotta-700) 100%)}.quick-stat-bar.success span{background:linear-gradient(90deg,#8aa07a 0%,var(--olive-600) 100%)}.event-list{display:grid;gap:16px}.event-row{display:flex;gap:14px;align-items:flex-start}.event-badge{display:grid;place-items:center;min-width:62px;padding:10px 8px;border-radius:18px;background:var(--cream-100);color:var(--brown-900)}.event-badge small{color:var(--terracotta-700);font-size:.72rem;font-weight:800;text-transform:uppercase}.event-badge strong{font-size:1.5rem}.event-badge.compact{min-width:84px}.availability-card{padding-bottom:18px}.checkin-operations-page{gap:22px}.checkin-hero-card,.checkin-summary-card,.checkin-location-card,.checkin-side-card,.checkin-detail-card,.checkin-disclaimer-card{background:radial-gradient(circle at top right,rgba(207,122,88,.14),transparent 34%),#fffaf4f5}.checkin-hero-card{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap;padding:28px}.checkin-hero-copy{max-width:680px}.checkin-hero-copy h1,.checkin-location-head h2,.checkin-side-card h2,.checkin-detail-card h2,.checkin-detail-section h3{margin:0}.checkin-hero-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;min-width:min(100%,520px)}.checkin-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.checkin-summary-card{display:grid;gap:10px;padding:22px;border:1px solid rgba(102,70,56,.08);border-radius:22px;box-shadow:0 18px 32px #5c3f2d14}.checkin-summary-card span,.checkin-location-meta span,.checkin-location-shift-head span,.checkin-location-shift-stats span,.checkin-shift-reference-row span,.checkin-shift-reference-row small,.checkin-admin-summary span,.checkin-detail-section p{color:var(--brown-600)}.checkin-summary-card strong{font-size:2rem;line-height:1}.checkin-summary-card p{margin:0;color:var(--brown-700)}.checkin-ops-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.9fr);gap:20px;align-items:start}.checkin-location-grid,.checkin-side-stack,.checkin-location-shifts,.checkin-shift-reference-list,.checkin-alert-list,.checkin-detail-stack{display:grid;gap:18px}.checkin-location-card,.checkin-side-card,.checkin-detail-card,.checkin-disclaimer-card{padding:24px}.checkin-location-head,.checkin-location-meta,.checkin-location-shift-head,.checkin-location-shift-stats,.checkin-detail-section-head,.checkin-detail-section-stats{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}.checkin-location-head p{margin:6px 0 0;color:var(--brown-600)}.checkin-location-total{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border-radius:999px;background:#a9f0c73d;color:#16653d;font-weight:800}.checkin-location-shift-card{display:grid;gap:12px;padding:18px;border-radius:18px;background:#f9f1e8c2;border:1px solid rgba(102,70,56,.08)}.checkin-location-shift-head strong,.checkin-shift-reference-row strong,.checkin-detail-section-stats span,.checkin-alert-card strong{color:var(--brown-900)}.checkin-progress-bar{height:8px;border-radius:999px;overflow:hidden;background:#ddc7af85}.checkin-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--olive-600) 0%,var(--terracotta-600) 100%)}.checkin-side-card{border:1px solid rgba(102,70,56,.08)}.checkin-shift-reference-row{display:grid;gap:4px;padding:16px;border-radius:16px;background:#f9f1e8c2}.checkin-alert-card{display:grid;gap:6px;padding:16px;border-radius:18px;border:1px solid transparent}.checkin-alert-card p{margin:0}.checkin-alert-card.is-high{background:#efd9d3b8;border-color:#9c4f4129}.checkin-alert-card.is-medium{background:#f7e5dbd1;border-color:#bd664929}.checkin-alert-card.is-info{background:#dde5d7a3;border-color:#6c7c5f29}.checkin-admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.checkin-admin-summary div{display:grid;gap:8px;padding:16px;border-radius:18px;background:#f9f1e8c2}.checkin-admin-summary strong{font-size:1.6rem;color:var(--brown-900)}.checkin-search-field{min-width:min(100%,320px)}.checkin-detail-stack{margin-top:8px}.checkin-detail-section{display:grid;gap:16px;padding-top:18px;border-top:1px solid rgba(102,70,56,.08)}.checkin-detail-section:first-child{padding-top:0;border-top:none}.checkin-detail-section p{margin:6px 0 0}.checkin-detail-section-stats{justify-content:flex-end}.checkin-detail-table-wrap{overflow-x:auto;margin-top:8px}.checkin-detail-table{min-width:980px}.checkin-detail-table thead th{background:var(--cream-100);color:var(--brown-700);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.checkin-detail-table th,.checkin-detail-table td{padding:18px 14px}.checkin-state-pill{display:inline-flex;align-items:center;justify-content:center;min-width:112px;padding:8px 12px;border-radius:999px;font-size:.82rem;font-weight:800}.checkin-state-pill.is-disponible{background:#a9f0c766;color:#118143}.checkin-state-pill.is-almuerzo{background:#ffe1bdb8;color:#cc6c1f}.checkin-state-pill.is-pendiente{background:#eadbc88a;color:var(--brown-800)}.checkin-state-pill.is-finalizado{background:#dde5d7c2;color:var(--olive-600)}.checkin-state-pill.is-incidencia{background:#efd9d3d1;color:var(--brick-600)}.checkin-disclaimer-card p{margin:0}.checkin-page,.checkin-grid,.checkin-team-list{gap:20px}.checkin-toolbar-card{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}.checkin-toolbar-card h2{margin:0 0 6px}.checkin-toolbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.checkin-toolbar-actions select{min-width:220px}.checkin-trend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.checkin-trend-card{display:grid;gap:12px;padding:18px;border-radius:20px;background:#f9f1e8f5;border:1px solid rgba(102,70,56,.08)}.checkin-trend-header,.checkin-trend-meta,.checkin-team-row,.checkin-team-stats{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.checkin-trend-header span,.checkin-trend-meta span,.checkin-team-stats span{color:var(--brown-600);font-size:.88rem}.checkin-trend-bar{height:10px;border-radius:999px;background:var(--cream-200);overflow:hidden}.checkin-trend-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--terracotta-500) 0%,var(--terracotta-700) 100%)}.checkin-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.35fr)}.checkin-team-list{display:grid}.checkin-team-row{padding:16px 0;border-bottom:1px solid rgba(102,70,56,.08)}.checkin-team-row:first-child{padding-top:0}.checkin-team-row:last-child{padding-bottom:0;border-bottom:none}.attendance-status{display:inline-flex;align-items:center;justify-content:center;min-width:96px;padding:8px 12px;border-radius:999px;font-size:.82rem;font-weight:800}.attendance-status.open{background:var(--terracotta-100);color:var(--terracotta-700)}.attendance-status.closed{background:var(--olive-100);color:var(--olive-600)}.segmented-toggle{display:inline-flex;padding:4px;border-radius:14px;background:var(--cream-100)}.segmented-toggle button{border:none;background:transparent;color:var(--brown-600);padding:10px 16px;border-radius:11px;font-weight:700}.segmented-toggle button.active{background:#fffbf6fa;color:var(--brown-900);box-shadow:0 6px 16px #5c3f2d1a}.availability-table{min-width:860px}.availability-table thead th{background:var(--cream-100);color:var(--brown-700);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.availability-table thead th strong{display:block;margin-top:4px;color:var(--brown-900);font-size:1.2rem;letter-spacing:normal}.availability-table th.is-holiday strong{color:var(--terracotta-700)}.availability-employee{min-width:190px;background:#fff8f0e6}.availability-pill{display:inline-flex;align-items:center;justify-content:center;min-height:40px;width:100%;border-radius:12px;border-left:4px solid var(--brown-700);background:var(--terracotta-100);color:var(--brown-800);font-size:.78rem;font-weight:700;padding:8px}.availability-pill.is-approved{background:var(--olive-100);color:var(--olive-600)}.availability-pill.is-rejected,.availability-pill.is-cancelled{background:var(--brick-100);color:var(--brick-600)}.availability-empty{display:block;width:100%;min-height:36px;border-radius:10px;background:#eadbc86b}.empty-panel{padding:18px 6px;color:var(--brown-600);text-align:center}.employees-page-simple{gap:20px}.employees-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.employees-directory-card{padding:20px}.employees-directory-header{margin-bottom:12px}.employee-create-button{display:inline-flex;align-items:center;gap:8px}.employee-create-button span{font-size:1.15rem;line-height:1}.employee-create-modal{display:flex;flex-direction:column;width:min(980px,100%);max-height:min(900px,calc(100vh - 48px));overflow:hidden;border-radius:8px;background:var(--cream-50);box-shadow:0 24px 80px #1f19163d}.employee-create-form{display:flex;min-height:0;flex:1;flex-direction:column}.employee-create-body{display:grid;gap:18px;padding:20px 22px;overflow-y:auto}.employee-create-section{display:grid;gap:14px;border-top:1px solid rgba(102,70,56,.1);padding-top:16px}.employee-create-section:first-of-type{border-top:0;padding-top:0}.employee-create-section h3,.employee-create-section h4,.employee-create-section p{margin:0}.employee-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.employee-create-toggle{display:flex;grid-template-columns:none;align-items:center;gap:9px;min-height:46px;border:1px solid rgba(102,70,56,.12);border-radius:8px;padding:10px 12px;background:#fffbf6cc}.employee-create-toggle input{width:16px;height:16px;margin:0;accent-color:var(--olive-600)}.employee-create-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid rgba(102,70,56,.1);background:#fffaf4fa}.employees-search-input{max-width:360px}.employees-table-wrap{overflow-x:visible}.employees-directory-table{width:100%;table-layout:fixed}.employees-directory-table thead th{background:var(--cream-100);color:var(--brown-700);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.employees-filter-row th{padding-top:0;background:var(--cream-100);text-transform:none}.employees-filter-row input,.employees-filter-row select{width:100%;min-width:0;height:32px;border:1px solid rgba(102,70,56,.14);border-radius:8px;background:#fffbf6f5;color:var(--brown-800);font-size:.75rem;letter-spacing:0;padding:6px 8px}.employees-filter-row select{padding-right:20px}.employees-directory-table th,.employees-directory-table td{padding:12px 8px;vertical-align:middle;overflow:hidden}.employees-directory-table th:nth-child(1),.employees-directory-table td:nth-child(1){width:25%}.employees-directory-table th:nth-child(2),.employees-directory-table td:nth-child(2){width:30%}.employees-directory-table th:nth-child(3),.employees-directory-table td:nth-child(3){width:18%}.employees-directory-table th:nth-child(4),.employees-directory-table td:nth-child(4){width:17%}.employees-directory-table th:nth-child(5),.employees-directory-table td:nth-child(5){width:10%}.employee-table-text{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-name-link{color:var(--brown-900);font-weight:800;text-decoration:underline;text-decoration-color:#a9543b59;text-underline-offset:3px}.employee-name-link:hover{color:var(--terracotta-700);text-decoration-color:currentColor}.employees-directory-table .employment-pill{min-width:0;width:100%;padding:7px 8px}.employee-profile-page{gap:18px}.employee-profile-back{display:inline-flex;align-items:center;gap:8px;width:fit-content;color:var(--brown-700);font-size:.88rem;font-weight:800}.employee-profile-back:hover{color:var(--terracotta-700)}.employee-profile-hero{display:flex;align-items:center;gap:22px;padding:22px 0;border-bottom:1px solid rgba(102,70,56,.12)}.employee-profile-avatar{display:grid;place-items:center;width:104px;height:104px;overflow:hidden;border:1px solid rgba(102,70,56,.14);border-radius:50%;background:var(--terracotta-100);color:var(--terracotta-700);font-size:1.9rem;font-weight:800}.employee-profile-avatar img{width:100%;height:100%;object-fit:cover}.employee-profile-heading{display:grid;justify-items:start;gap:6px}.employee-profile-heading h1,.employee-profile-heading p,.employee-profile-card h2,.employee-profile-card h3,.employee-profile-card h4{margin:0}.employee-profile-heading h1{color:var(--brown-900);font-size:clamp(1.7rem,3vw,2.35rem)}.employee-profile-heading>p:not(.eyebrow){margin-bottom:5px;color:var(--brown-600)}.employee-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,310px);gap:18px;align-items:start}.employee-profile-side,.employee-profile-departments{display:grid;gap:14px}.employee-profile-card{display:grid;gap:18px;border-radius:8px;padding:20px;box-shadow:0 12px 28px #5c3f2d14}.employee-profile-card-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.employee-profile-card-header .muted{margin-bottom:0}.employee-profile-society,.employee-profile-skill-level{max-width:340px}.employee-profile-skill-status{display:grid;gap:8px}.employee-profile-skill-status p{margin:0}.employee-profile-editor-section{display:grid;gap:12px;padding-top:4px;border-top:1px solid rgba(102,70,56,.1)}.employee-profile-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.employee-profile-check-list{display:grid;gap:7px}.employee-profile-check{display:flex;grid-template-columns:none;align-items:center;gap:8px;min-width:0;border:1px solid rgba(102,70,56,.12);border-radius:6px;padding:8px 10px;background:#fffbf6bd;color:var(--brown-700);font-size:.82rem;font-weight:700}.employee-profile-check.is-selected{border-color:#6c7c5f6b;background:var(--olive-100);color:var(--olive-600)}.employee-profile-check input{width:15px;height:15px;margin:0;accent-color:var(--olive-600)}.employee-profile-department{display:grid;gap:14px;border:1px solid rgba(102,70,56,.12);border-radius:8px;padding:15px;background:#fffbf6ad}.employee-profile-department-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.employee-profile-department-title span{border-radius:999px;padding:5px 8px;background:var(--cream-100);color:var(--brown-700);font-size:.72rem;font-weight:800}.employee-profile-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.employee-profile-assignment-grid>div{display:grid;align-content:start;gap:9px}.employee-profile-empty{border:1px dashed rgba(102,70,56,.22);border-radius:8px;padding:18px;color:var(--brown-600);text-align:center}.employee-profile-facts{display:grid;gap:12px;margin:0}.employee-profile-facts div{display:grid;gap:3px;padding-bottom:10px;border-bottom:1px solid rgba(102,70,56,.1)}.employee-profile-facts div:last-child{padding-bottom:0;border-bottom:0}.employee-profile-facts dt{color:var(--brown-600);font-size:.75rem;font-weight:700;text-transform:uppercase}.employee-profile-facts dd{margin:0;overflow-wrap:anywhere;color:var(--brown-900);font-weight:800}.employee-profile-balance-card{gap:8px}.employee-profile-balance-value{color:var(--olive-600);font-size:3.1rem;line-height:1}.employee-profile-balance-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px}.employee-profile-balance-breakdown span{display:grid;gap:3px;border-radius:6px;padding:9px;background:var(--cream-100);color:var(--brown-600);font-size:.76rem}.employee-profile-balance-breakdown strong{color:var(--brown-900);font-size:1rem}.employee-profile-main{display:grid;gap:18px;min-width:0}.employee-profile-main>.error-text{margin:0}.employee-profile-table th{color:var(--brown-600);font-size:.75rem;font-weight:700;text-transform:uppercase;white-space:nowrap}.employee-profile-table td{color:var(--brown-900);vertical-align:top}.employee-profile-table td:first-child{display:grid;gap:3px;min-width:160px}.employee-profile-table td .muted,.employee-profile-documents .muted{margin:0;font-size:.82rem}.employee-profile-documents{display:grid;margin:0;padding:0;list-style:none}.employee-profile-documents li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(102,70,56,.1)}.employee-profile-documents li:last-child{border-bottom:0}.employee-profile-documents li>div{display:grid;gap:3px;min-width:0}.employee-profile-documents strong{overflow-wrap:anywhere;color:var(--brown-900)}.employee-profile-documents li>button,.employee-profile-documents li>span{flex-shrink:0}.employee-directory-name{display:flex;align-items:center;gap:14px}.employment-pill{display:inline-flex;align-items:center;justify-content:center;min-width:110px;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:700}.employment-active{background:var(--olive-100);color:var(--olive-600)}.employment-vacation{background:var(--terracotta-100);color:var(--terracotta-700)}.employment-medical,.employment-away,.employment-inactive{background:var(--brick-100);color:var(--brick-600)}.requests-page{gap:20px}.requests-header{align-items:flex-start}.requests-header-actions{display:flex;gap:14px;align-items:center}.request-calendar-button{display:inline-flex;align-items:center;gap:9px;min-height:44px;border:1px solid var(--brand-primary);border-radius:8px;padding:12px 16px;background:var(--brand-primary);color:#fff;font-weight:600}.request-calendar-icon{position:relative;display:inline-block;width:18px;height:18px;border:1.8px solid currentColor;border-radius:4px}.request-calendar-icon:before{content:"";position:absolute;left:-1.8px;right:-1.8px;top:4px;border-top:1.8px solid currentColor}.request-calendar-icon:after{content:"";position:absolute;left:4px;right:4px;top:-4px;height:6px;border-left:1.8px solid currentColor;border-right:1.8px solid currentColor}.requests-header-actions .primary-button{display:inline-flex;align-items:center;gap:8px}.request-plus-icon{font-size:1.1rem;line-height:1;font-weight:700}.requests-toolbar-button{border:none;border-radius:18px;padding:14px 18px;background:var(--cream-100);color:var(--brown-900);font-weight:800}.requests-bulk-button{min-width:210px}.request-create-card{padding:22px}.request-create-form{display:grid;gap:18px}.request-create-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.request-create-heading h2{margin:0}.request-preview-chip{display:inline-flex;align-items:center;justify-content:center;min-width:88px;min-height:40px;border:1px solid rgba(173,153,143,.34);border-radius:8px;background:#ad998f1f;color:var(--brown-900);font-weight:800}.request-create-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px;align-items:start}.request-create-reason{grid-column:1 / -1}.request-create-reason textarea{min-height:96px;resize:vertical}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}.request-create-attachment{grid-column:1 / -1;display:grid;gap:8px;font-weight:600}.request-attachment-box{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:86px;border:1.5px dashed rgba(173,153,143,.36);border-radius:14px;padding:14px;background:#fffbf6cc}.request-attachment-icon{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(173,153,143,.2);border-radius:12px;background:#ad998f1f;color:var(--brown-700);font-size:.78rem;font-weight:900}.request-attachment-copy{display:grid;gap:3px;min-width:0}.request-attachment-copy strong,.request-attachment-copy span{overflow-wrap:anywhere}.request-attachment-copy span{color:var(--text-muted);font-size:.88rem;font-weight:500}.request-attachment-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.ghost-button.compact{padding:9px 12px;font-size:.84rem}.ghost-button.danger{background:var(--danger-100);color:var(--danger-600)}.employee-autocomplete{position:relative}.employee-autocomplete-list{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;display:grid;max-height:220px;overflow-y:auto;border:1px solid rgba(173,153,143,.28);border-radius:10px;background:#fff;box-shadow:0 18px 34px #1717171a}.employee-autocomplete-list button,.employee-autocomplete-list span{width:100%;border:none;border-radius:0;padding:11px 12px;background:transparent;color:var(--text-default);font-size:.92rem;text-align:left}.employee-autocomplete-list button:hover{transform:none;background:#ad998f14;color:var(--text-strong)}.employee-autocomplete-list span{color:var(--text-muted)}.request-create-help{margin:-6px 0 0}.request-create-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.request-tabs{display:flex;gap:28px;align-items:center;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid rgba(102,70,56,.08)}.request-tab{display:inline-flex;align-items:center;gap:10px;border:none;border-bottom:3px solid transparent;padding:0 0 14px;background:transparent;color:var(--brown-600);font-size:1rem;font-weight:700}.request-tab strong{display:inline-grid;place-items:center;min-width:32px;height:28px;padding:0 10px;border-radius:999px;background:#66463814;font-size:.92rem}.request-tab.active{color:var(--terracotta-700);border-bottom-color:var(--terracotta-700)}.requests-card{display:grid;gap:18px;padding:22px}.requests-filter-row{display:grid;grid-template-columns:minmax(280px,1.8fr) repeat(4,minmax(150px,1fr));gap:14px;align-items:center}.request-search{position:relative}.request-search span{position:absolute;left:-9999px}.request-search input{padding-left:18px}.requests-table-wrap{overflow-x:auto}.requests-duration-toolbar{display:flex;align-items:end;justify-content:flex-end;gap:10px}.requests-duration-toolbar span{color:var(--brown-700);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.requests-table{min-width:1180px;table-layout:fixed;width:100%}.requests-table thead th{background:var(--cream-100);color:var(--brown-700);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.requests-table-filter-row th{padding-top:0;text-transform:none}.requests-table-filter-row input,.requests-table-filter-row select{width:100%;min-width:0;height:32px;border:1px solid rgba(102,70,56,.14);border-radius:8px;background:#fffbf6f5;color:var(--brown-800);font-size:.75rem;letter-spacing:0;padding:6px 8px}.request-date-filter{display:grid;grid-template-columns:repeat(2,minmax(132px,1fr));gap:8px;max-width:320px}.requests-filter-placeholder{display:block;min-height:32px}.requests-table th,.requests-table td{padding:18px 14px}.requests-table th:nth-child(1),.requests-table td:nth-child(1){width:18%}.requests-table th:nth-child(2),.requests-table td:nth-child(2){width:9%}.requests-table th:nth-child(3),.requests-table td:nth-child(3){width:13%}.requests-table th:nth-child(4),.requests-table td:nth-child(4){width:12%}.requests-table th:nth-child(5),.requests-table td:nth-child(5){width:12%}.requests-table th:nth-child(6),.requests-table td:nth-child(6){width:10%}.requests-table th:nth-child(7),.requests-table td:nth-child(7){width:12%}.requests-table th:nth-child(8),.requests-table td:nth-child(8){width:14%}.checkbox-cell{width:54px;text-align:center}.checkbox-cell input{width:20px;height:20px}.leave-chip{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:800}.request-status-cell{min-width:120px}.request-actions{display:table-cell;justify-content:flex-start;white-space:normal}.request-actions .request-action-icon+.request-action-icon{margin-left:6px}.request-icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:96px;min-height:38px;border:none;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:800;cursor:pointer}.request-icon-button.neutral{background:var(--cream-100);color:var(--brown-700)}.request-icon-button:disabled{cursor:wait;opacity:.7}.request-action-icon{min-width:38px;width:38px;padding:0}.request-action-icon span{font-size:1.15rem;line-height:1;font-weight:800}.request-decision-chip{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:38px;padding:8px 10px;border-radius:999px;background:#e5e7eb;color:#4b5563;font-size:.76rem;font-weight:800;line-height:1.15;text-align:center;white-space:normal}.attachment-view-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:38px;border:1px solid rgba(173,153,143,.4);border-radius:999px;padding:8px 10px;background:var(--cream-100);color:var(--brown-700);font-size:.78rem;font-weight:800;cursor:pointer;white-space:nowrap}.attachment-view-button svg{width:17px;height:17px;flex:0 0 auto}.attachment-view-button:disabled{cursor:wait;opacity:.72}.attachment-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#1f19168f}.attachment-modal{width:min(980px,100%);max-height:min(820px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;border-radius:16px;background:var(--white);box-shadow:0 24px 80px #1f19163d}.attachment-modal-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid rgba(102,70,56,.1)}.attachment-modal-header h2{margin:2px 0 0;color:var(--brown-900);font-size:1.15rem}.attachment-modal-close{width:40px;height:40px;border:none;border-radius:999px;background:var(--cream-100);color:var(--brown-700);font-size:1.05rem;font-weight:900;cursor:pointer}.attachment-modal-body{min-height:420px;max-height:calc(100vh - 180px);padding:18px;overflow:auto;background:#f7f4f2}.attachment-modal-body img,.attachment-modal-body iframe{display:block;width:100%;min-height:420px;border:none;border-radius:10px;background:var(--white)}.attachment-modal-body img{height:auto;max-height:calc(100vh - 220px);object-fit:contain}.requests-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.pagination{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pagination button{min-width:44px;border:1px solid rgba(102,70,56,.12);border-radius:14px;background:#fffbf6fa;color:var(--brown-900);padding:10px 12px}.pagination button.active{border-color:var(--terracotta-700);background:var(--terracotta-700);color:var(--cream-50)}.absences-calendar-page{gap:12px}.absences-calendar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:4px 2px 0}.absences-calendar-header .eyebrow{margin-bottom:4px}.absences-calendar-header h1{font-size:clamp(1.25rem,1.6vw,1.55rem)}.absences-calendar-header .muted{margin:4px 0 0;line-height:1.35}.absence-back-button{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid var(--brand-primary);border-radius:8px;padding:9px 13px;background:var(--brand-primary);color:#fff;font-size:.9rem;font-weight:600}.absence-back-button span{font-size:1.05rem;line-height:1}.calendar-controls-card{display:grid;gap:12px;padding:14px 16px 16px}.absences-calendar-toolbar{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(340px,1fr) auto;align-items:center;gap:14px}.calendar-toolbar-group{display:grid;gap:5px}.calendar-toolbar-label{color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.calendar-view-switch{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#ad998f12;border:1px solid rgba(173,153,143,.12)}.calendar-view-switch button{min-height:34px;border:1px solid transparent;border-radius:8px;padding:7px 13px;background:transparent;color:var(--text-default);font-size:.9rem;font-weight:600}.calendar-view-switch button.active{background:#fff;border-color:#ad998f2e;color:var(--text-strong);box-shadow:0 8px 20px #1717170f}.calendar-navigation{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.calendar-current-range{display:grid;grid-template-columns:minmax(140px,auto) minmax(150px,190px);align-items:center;gap:4px 12px;min-width:0;padding:8px 10px;border:1px solid rgba(173,153,143,.14);border-radius:10px;background:#ad998f0d}.calendar-current-range .calendar-toolbar-label{grid-column:1 / -1}.calendar-current-range strong{align-self:center;color:var(--text-strong);font-size:.96rem;line-height:1.2;text-transform:capitalize}.calendar-current-range input{min-height:36px;border-color:#ad998f57;padding:7px 10px}.calendar-filter-card{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;padding-top:12px;border-top:1px solid rgba(173,153,143,.12)}.calendar-filter-card label{display:grid;gap:5px}.calendar-filter-card select{min-height:38px;border-color:#ad998f57;padding:8px 12px}.calendar-status-legend{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,auto);align-items:stretch;gap:18px;padding:14px 16px}.calendar-legend-group{display:grid;align-content:start;gap:10px;min-width:0}.calendar-legend-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,max-content));align-items:center;gap:8px}.calendar-legend-group:last-child{padding-left:18px;border-left:1px solid rgba(173,153,143,.14)}.calendar-legend-group:last-child .calendar-legend-items{grid-template-columns:1fr}.calendar-legend-item{display:inline-flex;align-items:center;gap:8px;min-height:32px;border:1px solid rgba(173,153,143,.14);border-radius:8px;padding:6px 10px;background:#ffffffa8;color:var(--text-default);font-size:.84rem;font-weight:700}.calendar-legend-swatch{width:14px;height:14px;border:1px solid transparent;border-radius:999px}.calendar-legend-swatch.approved{border-color:#66765c38;background:#66765c66}.calendar-legend-swatch.pending{border-color:#b08a1f;background:#fff6d7}.calendar-nav-button,.calendar-today-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border-radius:8px;padding:9px 12px;font-size:.9rem;font-weight:600}.calendar-nav-button{border:1px solid rgba(173,153,143,.36);background:#fff;color:var(--text-default)}.calendar-today-button{border:1px solid var(--brand-primary);background:var(--brand-primary);color:#fff}.calendar-nav-button span{color:var(--brand-primary);font-size:1rem;line-height:1}.absence-calendar-card{padding:10px}.absence-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(112px,1fr));gap:1px;overflow-x:auto;border:1px solid var(--line-soft);border-radius:14px;background:var(--line-soft)}.absence-calendar-grid.week-view .absence-calendar-day{min-height:360px}.absence-calendar-weekday,.absence-calendar-day{background:#fffffff5}.absence-calendar-weekday{min-width:112px;padding:8px 10px;color:var(--text-muted);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-align:left;text-transform:uppercase}.absence-calendar-day{display:grid;align-content:start;gap:7px;min-width:112px;min-height:122px;border:none;padding:8px;text-align:left}.absence-calendar-day:hover{transform:none;background:#ad998f0d}.absence-calendar-day.outside-month{background:#ffffff9e;color:var(--text-muted)}.absence-calendar-day.today{box-shadow:inset 0 0 0 2px #ad998f80}.absence-calendar-date{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#ad998f1a;color:var(--text-strong);font-weight:700}.absence-calendar-count{justify-self:end;margin-top:-36px;min-width:28px;border-radius:999px;padding:4px 8px;background:var(--success-100);color:var(--success-600);font-size:.78rem;font-weight:700;text-align:center}.absence-calendar-events,.absence-day-list{display:grid;gap:8px}.absence-event{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;border:1px solid rgba(173,153,143,.18);border-radius:12px;background:#ad998f14}.absence-event.is-approved{border-color:#66765c38;background:#66765c21}.absence-event.is-pending{border-color:#b08a1f;border-style:dashed;background:#fff6d7}.absence-event.compact{grid-template-columns:auto minmax(0,1fr);gap:8px;padding:7px;border-radius:9px}.absence-type-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 auto;color:var(--text-strong);font-size:1.05rem;font-weight:900;line-height:1}.absence-type-icon.legend{width:20px;height:20px;font-size:.95rem}.absence-type-icon.is-vacation{color:#66765c}.absence-type-icon.is-comp-time{color:#8b6f1f}.absence-type-icon.is-medical,.absence-type-icon.is-family-illness{color:#c44536}.absence-type-icon.is-family-illness{font-size:.82rem}.absence-type-icon.is-parental{color:#bd6649}.absence-type-icon.is-other{color:var(--text-muted)}.absence-event-copy{display:grid;gap:2px;min-width:0}.absence-event-copy strong,.absence-event-copy span{overflow-wrap:anywhere;white-space:normal}.absence-event-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:500;line-height:1.25}.absence-event-copy span{color:var(--text-muted);font-size:.78rem}.absence-more{display:inline-flex;justify-content:center;border-radius:8px;padding:6px;background:#ad998f14;color:var(--text-default);font-size:.78rem;font-weight:700}.absence-day-view{display:grid;gap:16px}.absence-day-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:12px;background:#ad998f14}.absence-day-heading div{display:grid;gap:4px}.absence-day-heading span{color:var(--text-muted);text-transform:capitalize}.absence-day-heading strong{font-size:1.25rem}.absence-day-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.absence-day-meta{display:grid;justify-items:end;gap:4px;min-width:140px;color:var(--text-muted);font-size:.86rem}.absence-day-meta strong{font-size:.95rem}@media(max-width:1180px){.attendance-shell-body,.attendance-top-grid,.attendance-bottom-grid{grid-template-columns:1fr}.request-create-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.attendance-sidebar{border-right:none;border-bottom:1px solid rgba(169,84,59,.12)}.attendance-sidebar-panel{padding:14px}.attendance-nav-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.attendance-top-grid>.attendance-side-card{position:static;width:auto}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{border-bottom-left-radius:24px;border-bottom-right-radius:24px}.topbar,.dashboard-card-header{flex-direction:column;align-items:stretch}.dashboard-metrics,.dashboard-grid,.employees-overview-grid,.checkin-grid,.checkin-ops-grid,.employee-profile-layout,.requests-filter-row{grid-template-columns:1fr}.absences-calendar-toolbar,.calendar-navigation,.absence-day-row,.absence-day-heading{align-items:stretch}.absences-calendar-toolbar,.calendar-status-legend,.calendar-filter-card,.calendar-navigation,.absence-day-row,.calendar-legend-items{grid-template-columns:1fr}.calendar-legend-group:last-child{padding-left:0;padding-top:12px;border-left:0;border-top:1px solid rgba(173,153,143,.14)}.calendar-navigation,.absence-day-heading,.absence-day-row{flex-direction:column}.calendar-view-switch,.calendar-current-range{width:100%}.calendar-view-switch button{flex:1 1 0}.absence-day-meta{justify-items:start;min-width:0}.request-create-grid,.attendance-topbar{grid-template-columns:1fr}.attendance-content{padding:22px 18px 28px}.attendance-panel-header,.attendance-card-header,.attendance-table-header,.attendance-table-tools,.attendance-chart-toolbar,.attendance-header-controls{align-items:stretch}.attendance-chart-axis{font-size:.78rem}.attendance-stat-grid{grid-template-columns:1fr}.checkin-toolbar-actions,.checkin-team-stats,.requests-header-actions,.request-tabs,.requests-footer,.checkin-location-head,.checkin-location-meta,.checkin-location-shift-head,.checkin-location-shift-stats,.checkin-detail-section-head,.checkin-detail-section-stats{flex-direction:column;align-items:stretch}.checkin-admin-summary{grid-template-columns:1fr}}.attendance-page{padding-bottom:32px}.attendance-intro{max-width:720px}.attendance-filter-card,.attendance-main-table-card,.attendance-side-card{display:grid;gap:20px}.attendance-view-switch{display:inline-flex;flex-wrap:wrap;gap:10px}.attendance-view-switch button{border:1px solid rgba(102,70,56,.14);border-radius:999px;background:#fffbf6f0;color:var(--brown-700);font-weight:700;padding:10px 16px}.attendance-view-switch button.active{background:var(--brown-900);border-color:var(--brown-900);color:var(--cream-50)}.attendance-filter-grid{align-items:end}.attendance-period-card{display:grid;gap:6px;min-height:100%;padding:14px 16px;border-radius:18px;background:var(--cream-100);border:1px solid rgba(102,70,56,.08)}.attendance-period-label{color:var(--brown-700);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.attendance-top-grid,.attendance-bottom-grid{align-items:start;grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-top-grid{position:relative}.attendance-top-grid>.table-card:first-child{grid-column:span 3}.attendance-top-grid>.attendance-side-card{position:absolute;top:0;right:0;width:calc((100% - 48px)/4);z-index:3}.attendance-main-table-card{min-width:0;grid-column:span 3}.attendance-side-card{align-content:start}.attendance-activity-chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));gap:14px;align-items:end}.attendance-activity-bar{display:grid;gap:8px;justify-items:center}.attendance-activity-bar span,.attendance-activity-bar strong{font-size:.78rem;text-align:center}.attendance-activity-track{width:100%;min-height:150px;border-radius:18px;padding:10px;display:flex;align-items:end;background:linear-gradient(180deg,#f6ecdfb8,#efd1bffa)}.attendance-activity-track i{display:block;width:100%;border-radius:12px;background:linear-gradient(180deg,var(--terracotta-500) 0%,var(--terracotta-700) 100%);min-height:0}.attendance-feed-row{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding-top:14px;border-top:1px solid rgba(102,70,56,.08)}.attendance-feed-row:first-child{padding-top:0;border-top:none}.attendance-severity-dot{width:12px;height:12px;border-radius:999px;margin-top:4px}.attendance-severity-dot.is-high{background:var(--brick-600)}.attendance-severity-dot.is-medium{background:var(--terracotta-600)}.attendance-severity-dot.is-low{background:var(--olive-600)}.attendance-feed-copy,.attendance-feed-detail,.attendance-subcopy{margin:4px 0 0}.attendance-subcopy{font-size:.78rem;line-height:1.25;color:var(--brown-600);overflow-wrap:anywhere}.attendance-feed-detail{color:var(--brown-700)}.attendance-status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:700}.attendance-status-pill.is-no_records{background:var(--cream-100);color:var(--brown-700)}.attendance-status-pill.is-closed{background:var(--olive-100);color:var(--olive-600)}.attendance-status-pill.is-open{background:var(--terracotta-100);color:var(--terracotta-700)}.attendance-status-pill.is-incident{background:var(--brick-100);color:var(--brick-600)}.attendance-day-cell{white-space:nowrap}.attendance-empty-state{padding:24px 16px;text-align:center;color:var(--brown-600)}.attendance-data-table td{vertical-align:top}.attendance-data-table{width:100%;table-layout:fixed}.attendance-data-table th,.attendance-data-table td{padding:12px 10px;font-size:.88rem;text-align:center}.attendance-data-table th{font-size:.75rem}.attendance-data-table .employee-cell{display:block;min-width:0}.attendance-data-table .employee-cell strong{display:block;line-height:1.25}.attendance-data-table td:first-child,.attendance-data-table th:first-child{width:24%;text-align:left}.attendance-data-table-summary td:last-child,.attendance-data-table-summary th:last-child{width:14%}.attendance-data-table-summary td:not(:first-child):not(:last-child),.attendance-data-table-summary th:not(:first-child):not(:last-child){width:10.8%}.attendance-data-table-daily td:not(:first-child),.attendance-data-table-daily th:not(:first-child){width:12.65%}.attendance-row-expandable{cursor:pointer;transition:background-color .15s ease}.attendance-row-expandable:hover{background:#fffbf6b3}.attendance-row-expandable:focus-visible{outline:2px solid var(--terracotta-700);outline-offset:-2px}.attendance-row-expandable.is-expanded{background:#fffbf6eb}.attendance-data-table-daily .employee-cell{display:flex;align-items:flex-start;gap:10px}.attendance-row-chevron{flex:none;margin-top:2px;font-size:1.1rem;line-height:1;color:var(--brown-600);transition:transform .15s ease}.attendance-row-expandable.is-expanded .attendance-row-chevron{transform:rotate(90deg)}.attendance-detail-row td{padding:0;text-align:left;background:#faf4ec8c}.attendance-detail-panel{padding:16px 18px 20px;border-top:2px solid rgba(173,153,143,.25)}.attendance-detail-head{margin-bottom:12px}.attendance-detail-head h3{margin:0;font-size:.98rem}.attendance-detail-head p{margin:2px 0 0;font-size:.8rem}.attendance-detail-panel .attendance-breakdown-table{width:100%;border-collapse:collapse;background:#ffffffb8;border-radius:14px;overflow:hidden}.attendance-detail-panel .attendance-breakdown-table th,.attendance-detail-panel .attendance-breakdown-table td{width:auto;padding:10px 12px;text-align:left;font-size:.84rem;vertical-align:top;border-bottom:1px solid rgba(173,153,143,.16)}.attendance-detail-panel .attendance-breakdown-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--brown-600)}.attendance-detail-panel .attendance-breakdown-table tr:last-child td{border-bottom:none}.attendance-breakdown-time{font-weight:700;white-space:nowrap}.attendance-breakdown-loc{display:flex;flex-direction:column;gap:2px}.attendance-breakdown-loc .muted{font-size:.74rem}.attendance-breakdown-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.attendance-method-main{font-weight:700}.attendance-criteria-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--cream-100);color:var(--brown-700);font-size:.72rem;font-weight:600;white-space:nowrap}.attendance-event-type{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.76rem;font-weight:700;white-space:nowrap}.attendance-event-type.is-check_in{background:var(--olive-100);color:var(--olive-600)}.attendance-event-type.is-check_out{background:var(--terracotta-100);color:var(--terracotta-700)}.attendance-event-type.is-unknown{background:var(--brick-100);color:var(--brick-600)}.attendance-event-status{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.76rem;font-weight:700;white-space:nowrap;background:var(--cream-100);color:var(--brown-700)}.attendance-event-status.is-accepted,.attendance-event-status.is-synced{background:var(--olive-100);color:var(--olive-600)}.attendance-event-status.is-rejected,.attendance-event-status.is-failed{background:var(--brick-100);color:var(--brick-600)}.attendance-event-status.is-pending{background:var(--terracotta-100);color:var(--terracotta-700)}.settings-page{gap:20px}.settings-section-card{display:grid;gap:18px}.settings-section-card h2,.settings-section-card h3,.settings-site-card strong{margin:0}.settings-section-grid{display:grid;gap:18px;grid-template-columns:minmax(280px,.95fr) minmax(0,1.35fr);align-items:start}.settings-dual-grid{align-items:start}.settings-form-panel,.settings-form-copy{display:grid;gap:16px}.settings-form-copy{gap:4px}.settings-form-toggle-row{display:flex;justify-content:flex-start}.settings-site-form-panel{padding:20px;border-radius:20px;background:#fffbf6bd;border:1px solid rgba(102,70,56,.08)}.settings-site-form-row{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-turn-definition-form-row{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-checkbox{display:flex;align-items:center;gap:10px;font-weight:600}.settings-checkbox input{width:auto;margin:0}.settings-actions,.settings-inline-actions{display:flex;flex-wrap:wrap;gap:10px}.settings-device-actions{display:inline-flex;align-items:center;gap:10px}.settings-icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;padding:0;border-radius:12px;border:1px solid rgba(173,153,143,.28);background:#fffffff5;color:var(--text-default)}.settings-icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.settings-icon-button-danger{color:var(--danger-600);background:var(--danger-100);border-color:#9c4f4133}.settings-subcopy{color:var(--brown-600);font-size:.82rem}.settings-table-wrap{overflow-x:auto}.settings-site-table-wrap{min-width:0}.settings-data-table{width:100%;min-width:720px;border-collapse:collapse}.settings-site-table{min-width:0}.settings-data-table th,.settings-data-table td{padding:12px 10px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(102,70,56,.08)}.settings-data-table th{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--brown-600)}.settings-status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700}.settings-status-pill.is-active{background:var(--olive-100);color:var(--olive-600)}.settings-status-pill.is-scheduled{background:var(--terracotta-100);color:var(--terracotta-700)}.settings-status-pill.is-expired{background:var(--brick-100);color:var(--brick-600)}@media(max-width:900px){.attendance-view-switch{width:100%}.attendance-view-switch button{flex:1 1 0}.attendance-activity-chart{grid-template-columns:repeat(auto-fit,minmax(56px,1fr))}.attendance-activity-track{min-height:120px}.settings-section-grid{grid-template-columns:1fr}.settings-data-table{min-width:640px}.settings-site-form-row,.settings-turn-definition-form-row{grid-template-columns:1fr}}:root{font-family:Inter,sans-serif;color:#171717;background:#f9fafb;--brand-primary: #ad998f;--brand-primary-rgb: 173, 153, 143;--canvas: #f9fafb;--text-strong: #171717;--text-default: #525252;--text-medium: #404040;--text-muted: #828282;--line-soft: #ebebeb;--border-soft: rgba(51, 51, 51, .08);--divider-strong: rgba(5, 26, 46, .1);--success-600: #66765c;--success-100: rgba(102, 118, 92, .12);--danger-600: #9c4f41;--danger-100: rgba(156, 79, 65, .12);--cream-50: #ffffff;--cream-100: rgba(173, 153, 143, .08);--cream-200: rgba(173, 153, 143, .14);--cream-300: rgba(173, 153, 143, .2);--brown-900: var(--text-strong);--brown-800: var(--text-medium);--brown-700: var(--text-default);--brown-600: var(--text-muted);--terracotta-700: var(--brand-primary);--terracotta-600: #9d8a81;--terracotta-500: #bbaa9f;--terracotta-200: rgba(173, 153, 143, .18);--terracotta-100: rgba(173, 153, 143, .12);--olive-600: var(--success-600);--olive-100: var(--success-100);--brick-600: var(--danger-600);--brick-100: var(--danger-100);--shadow-soft: 0 18px 44px rgba(23, 23, 23, .05)}html{background:#fcfbfa}body{font-family:Inter,sans-serif;color:var(--text-default);background:radial-gradient(circle at top left,rgba(173,153,143,.12),transparent 26%),radial-gradient(circle at bottom right,rgba(173,153,143,.08),transparent 22%),linear-gradient(180deg,#fcfbfa,#f7f4f2 55%,#f9fafb)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 10% 12%,rgba(255,255,255,.72),transparent 20%),radial-gradient(circle at 84% 18%,rgba(173,153,143,.08),transparent 18%)}#root{min-height:100vh}::selection{background:#ad998f38;color:var(--text-strong)}h1,h2,h3,h4,strong{color:var(--text-strong)}p{line-height:1.6}.loading-screen,.auth-layout{padding:40px 24px}.loading-screen{color:var(--text-medium)}.auth-layout{max-width:1100px;margin:0 auto;gap:24px;align-content:center}.auth-card,.panel-card,.table-card,.calendar-card{background:#fffffff0;border:1px solid var(--border-soft);border-radius:16px;box-shadow:var(--shadow-soft)}.auth-card{position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;inset:0 0 auto 0;height:96px;background:linear-gradient(180deg,#ad998f1f,#ad998f00);pointer-events:none}.auth-card-primary{min-height:440px}.auth-card-copy{position:relative;z-index:1;display:grid;gap:10px;max-width:34rem}.eyebrow{color:var(--brand-primary);letter-spacing:.16em}.muted{color:var(--text-muted)}.error-text,.success-text{margin:0;border-radius:12px;padding:12px 14px}.error-text{background:var(--danger-100);color:var(--danger-600)}.success-text{background:var(--success-100);color:var(--success-600)}label{color:var(--text-medium);font-size:.95rem}input,select,textarea{min-height:44px;border:1px solid rgba(173,153,143,.56);border-radius:8px;background:#fff;color:var(--text-strong);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 4px #ad998f1f}button{transition:transform .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}button:hover:not(:disabled){transform:translateY(-1px)}.primary-button,.secondary-button,.ghost-button,.inline-button,.dashboard-action,.request-icon-button,.requests-toolbar-button,.sidebar-logout,.pagination button{min-height:44px;border-radius:8px;font-weight:600}.primary-button{background:var(--brand-primary);color:#fff;border:1px solid var(--brand-primary);box-shadow:none}.secondary-button,.ghost-button,.inline-button,.requests-toolbar-button,.sidebar-logout,.request-icon-button.neutral,.pagination button{background:#fffffff5;color:var(--brand-primary);border:1px solid rgba(173,153,143,.66)}.dashboard-action,.request-icon-button{border:1px solid transparent}.approve{background:var(--success-100);color:var(--success-600);border-color:#66765c33}.reject{background:var(--danger-100);color:var(--danger-600);border-color:#9c4f4133}.app-shell{grid-template-columns:284px minmax(0,1fr);background:transparent}.sidebar{gap:24px;padding:24px 18px;background:#ffffffe0;border-right:1px solid var(--border-soft);color:var(--text-default)}.sidebar-header{padding:4px 2px 6px}.brand-block{align-items:flex-start}.brand-copy{display:grid;gap:4px}.brand-mark{border-radius:16px;background:#ad998f29;color:var(--brand-primary);box-shadow:inset 0 0 0 1px #ad998f2e}.brand-subtitle{max-width:180px;color:var(--text-muted)}.nav-list{gap:8px}.nav-list a{padding:12px 14px;border-radius:12px;border:1px solid transparent;color:var(--text-default)}.nav-list a.active{background:#ad998f14;border-color:#ad998f2e;color:var(--text-strong)}.nav-list a:hover{background:#ad998f0d;transform:none}.sidebar-profile{border-radius:16px;background:#ad998f12;border:1px solid rgba(173,153,143,.12)}.profile-avatar,.employee-avatar{background:#ad998f24;color:var(--brand-primary);box-shadow:none}.content{padding:24px 28px 36px}.content>*{width:min(100%,1340px);margin-inline:auto}.topbar{margin-bottom:24px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:16px;background:#ffffffdb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-search input{padding:12px 14px;border:1px solid rgba(173,153,143,.24);border-radius:10px;background:#ad998f0a;box-shadow:none}.page-stack,.dashboard-page,.requests-page,.settings-page,.employees-page-simple{gap:24px}.page-header h1,.dashboard-card h2,.table-card h2,.panel-card h2,.settings-section-card h3{font-size:clamp(1.35rem,2vw,1.7rem);font-weight:600;line-height:1.2}.panel-header,.dashboard-card-header,.page-header{gap:16px}.metric-card{border-radius:16px;padding:20px;box-shadow:0 12px 28px #1717170a}.metric-badge{width:56px;height:56px;background:#ad998f1f;color:var(--brand-primary)}.metric-value,.quick-stat-value{font-size:2rem;font-weight:600;letter-spacing:-.03em}.metric-label,.metric-helper{color:var(--text-muted)}.metric-tooltip-trigger{border-color:#ad998f33;background:#ad998f12;color:var(--brand-primary)}.metric-tooltip-content{background:#201c1af5;color:#fff;box-shadow:0 18px 36px #1717171f}.metric-tooltip-content:after{border-color:rgba(32,28,26,.96) transparent transparent transparent}.tone-orange .metric-badge,.tone-blue .metric-badge,.tone-neutral .metric-badge{background:#ad998f1f;color:var(--brand-primary)}.tone-green .metric-badge{background:var(--success-100);color:var(--success-600)}.tone-red .metric-badge{background:var(--danger-100);color:var(--danger-600)}table{background:transparent}th,td{border-bottom:1px solid rgba(23,23,23,.06);color:var(--text-default)}.dashboard-table th,.requests-table thead th,.employees-directory-table thead th,.settings-data-table th,.availability-table thead th,.attendance-data-table th,.checkin-detail-table thead th{background:#ad998f12;color:var(--text-medium)}.dashboard-table tbody tr:hover td,.requests-table tbody tr:hover td,.employees-directory-table tbody tr:hover td,.settings-data-table tbody tr:hover td,.attendance-data-table tbody tr:hover td{background:#ad998f0a}.dashboard-link,.dashboard-link.subtle,.attendance-view-link{color:var(--brand-primary);font-weight:600}.quick-stat-card,.attendance-period-card,.settings-site-form-panel,.checkin-trend-card{border-radius:16px;background:#ffffffd1;border:1px solid var(--border-soft)}.quick-stat-label,.attendance-period-label{color:var(--text-muted)}.quick-stat-bar,.attendance-activity-track,.availability-empty{background:#ad998f1a}.quick-stat-bar span,.attendance-activity-track i,.checkin-trend-bar span{background:linear-gradient(180deg,#c5b5ab 0%,var(--brand-primary) 100%)}.event-list{gap:0}.event-row,.attendance-feed-row{padding:16px 0;border-top:1px solid rgba(23,23,23,.06)}.event-row:first-child,.attendance-feed-row:first-child{padding-top:0;border-top:none}.event-badge{border-radius:16px;background:#ad998f14;border:1px solid rgba(173,153,143,.12);color:var(--text-strong)}.event-badge small{color:var(--brand-primary)}.leave-chip,.request-decision-chip,.status-pill,.employment-pill,.attendance-status-pill,.settings-status-pill{font-weight:600}.leave-chip{border-radius:999px}.status-pending,.request-tab.active strong,.attendance-status-pill.is-open,.settings-status-pill.is-scheduled{background:#ad998f1f;color:var(--brand-primary)}.status-approved,.employment-active,.attendance-status-pill.is-closed,.settings-status-pill.is-active,.request-decision-chip{background:var(--success-100);color:var(--success-600)}.status-rejected,.status-cancelled,.employment-medical,.employment-away,.employment-inactive,.attendance-status-pill.is-incident,.settings-status-pill.is-expired{background:var(--danger-100);color:var(--danger-600)}.attendance-status-pill.is-no_records,.employment-vacation{background:#ad998f14;color:var(--text-default)}.request-tabs{gap:22px;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}.request-tab{color:var(--text-muted);font-weight:600}.request-tab strong{background:#ad998f14;color:var(--text-default)}.request-tab.active{color:var(--text-strong);border-bottom-color:var(--brand-primary)}.request-search input,.employees-search-input,.search-input,.topbar-search input{max-width:100%}.pagination button.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.segmented-toggle,.attendance-view-switch,.attendance-range-switch{background:#ad998f14}.segmented-toggle button,.attendance-view-switch button,.attendance-range-switch button{border:1px solid transparent;color:var(--text-default);font-weight:600}.segmented-toggle button.active,.attendance-view-switch button.active,.attendance-range-switch button.active{background:#fff;border-color:#ad998f2e;color:var(--text-strong);box-shadow:0 8px 20px #1717170f}.attendance-severity-dot.is-high{background:var(--danger-600)}.attendance-severity-dot.is-medium{background:var(--brand-primary)}.attendance-severity-dot.is-low{background:var(--success-600)}.attendance-empty-state,.empty-panel,.settings-subcopy,.attendance-subcopy{color:var(--text-muted)}.checkin-state-pill.is-disponible,.attendance-state-pill.is-presente{background:var(--success-100);color:var(--success-600)}.checkin-state-pill.is-almuerzo,.attendance-state-pill.is-tarde{background:#ad998f24;color:var(--brand-primary)}.checkin-state-pill.is-pendiente,.checkin-state-pill.is-finalizado{background:#ad998f14;color:var(--text-default)}.checkin-state-pill.is-incidencia,.attendance-state-pill.is-ausente{background:var(--danger-100);color:var(--danger-600)}@media(max-width:980px){.sidebar{height:auto;position:relative;border-right:none;border-bottom:1px solid var(--border-soft);border-bottom-left-radius:18px;border-bottom-right-radius:18px}.content{height:auto;overflow:visible;padding:18px 18px 28px}.topbar{padding:14px}.content>*{width:100%}}@media(max-width:760px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:none;border-bottom:1px solid var(--border-soft)}.content{min-width:0}.employees-overview-grid .metric-tooltip-content{left:auto;right:0;min-width:min(220px,calc(100vw - 40px));transform:none}.employees-overview-grid .metric-tooltip:hover .metric-tooltip-content,.employees-overview-grid .metric-tooltip:focus-within .metric-tooltip-content{transform:translateY(-2px)}.employees-directory-card{padding:14px}.employee-create-grid{grid-template-columns:1fr}.employee-create-modal{max-height:calc(100vh - 24px)}.employee-create-body{padding:16px}.employee-create-actions{padding:14px 16px}.employee-profile-hero,.employee-profile-card-header{align-items:flex-start;flex-direction:column}.employee-profile-avatar{width:84px;height:84px;font-size:1.5rem}.employee-profile-card-header .primary-button{width:100%}.employee-profile-assignment-grid{grid-template-columns:1fr}.employees-directory-table,.employees-directory-table tbody,.employees-directory-table tr,.employees-directory-table td{display:block;width:100%}.employees-directory-table thead{display:none}.employees-directory-table tbody{display:grid;gap:12px}.employees-directory-table tbody tr{border:1px solid rgba(102,70,56,.12);border-radius:8px;background:#fffbf6db;overflow:hidden}.employees-directory-table th,.employees-directory-table td,.employees-directory-table th:nth-child(n),.employees-directory-table td:nth-child(n){width:100%}.employees-directory-table td{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:center;padding:9px 10px}.employees-directory-table td:before{content:attr(data-label);color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.employees-directory-table .empty-panel{grid-column:1 / -1}}.devices-card{display:grid;gap:16px}.devices-toolbar,.devices-toolbar-filters,.devices-selection-bar,.devices-paste-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.devices-toolbar{justify-content:space-between}.devices-toolbar .search-input{width:320px}.devices-state-filter{width:auto;min-width:200px}.devices-paste{display:grid;gap:10px}.devices-paste textarea{min-height:110px;resize:vertical;font-family:inherit}.devices-table-wrap{overflow-x:auto}.devices-table .checkbox-cell input{min-height:0;margin:0}.device-unenroll-body{display:grid;gap:12px;padding:18px 22px;overflow:auto}.device-unenroll-body p{margin:0}.devices-queue-table{min-width:0}.device-unenroll-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 22px;border-top:1px solid var(--line-soft)}.device-result-ok{color:var(--success-600)}.device-result-warning{color:var(--brand-primary)}.device-result-error{color:var(--danger-600)}.portal-page{min-height:100vh}.portal-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;border-bottom:1px solid var(--border-soft);background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.portal-brand{display:flex;align-items:center;gap:12px}.portal-brand .brand-mark{width:40px;height:40px;border-radius:12px}.portal-brand>div{display:grid;gap:2px}.portal-brand .muted{font-size:.84rem}.portal-header-actions{display:flex;align-items:center;gap:8px}.portal-header-actions .ghost-button{display:inline-flex;align-items:center;min-height:38px}.portal-main{display:grid;gap:20px;width:min(100%,920px);margin:0 auto;padding:24px 24px 40px}.portal-hero{display:grid;gap:20px}.portal-identity{display:flex;align-items:center;gap:16px}.portal-identity h1,.portal-identity p{margin:0}.portal-identity h1{font-size:clamp(1.35rem,3vw,1.75rem);line-height:1.2}.portal-identity .muted{overflow-wrap:anywhere}.portal-avatar{display:grid;flex-shrink:0;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(var(--brand-primary-rgb),.14);color:var(--brand-primary);font-size:1.3rem;font-weight:700}.portal-progress{display:grid;gap:8px}.portal-progress p{margin:0}.portal-progress-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.portal-progress-bar{height:10px;overflow:hidden;border-radius:999px;background:rgba(var(--brand-primary-rgb),.14)}.portal-progress-bar span{display:block;height:100%;border-radius:inherit;background:var(--success-600);transition:width .3s ease}.portal-card{display:grid;gap:18px}.portal-card h2,.portal-card p{margin:0}.portal-card h2+.muted{margin-top:6px}.portal-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.portal-section-status{flex-shrink:0;border-radius:999px;padding:6px 10px;background:rgba(var(--brand-primary-rgb),.12);color:var(--brand-primary);font-size:.8rem;font-weight:600}.portal-section-status.is-complete{background:var(--success-100);color:var(--success-600)}.portal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:0}.portal-facts div{display:grid;gap:4px}.portal-facts dt{color:var(--text-muted);font-size:.82rem}.portal-facts dd{display:grid;gap:2px;margin:0;color:var(--text-strong);overflow-wrap:anywhere}.portal-section-nav{display:flex;flex-wrap:wrap;gap:8px}.portal-section-nav button{display:inline-flex;align-items:center;gap:8px;min-height:36px;border:1px solid rgba(var(--brand-primary-rgb),.4);border-radius:999px;padding:6px 12px;background:#fff;color:var(--text-medium);font-size:.86rem}.portal-section-nav button span{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:rgba(var(--brand-primary-rgb),.14);color:var(--brand-primary);font-size:.75rem;font-weight:700}.portal-section-nav button.is-complete span{background:var(--success-100);color:var(--success-600)}.portal-form{display:grid;gap:20px}.portal-form .portal-card{scroll-margin-top:80px}.portal-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portal-field{display:grid;align-content:start;gap:6px}.portal-field-label em{color:var(--danger-600);font-style:normal}.portal-field input,.portal-field select{width:100%;padding:10px 12px}.portal-field small{font-size:.8rem;line-height:1.4}.portal-field.has-error input,.portal-field.has-error select{border-color:var(--danger-600)}.portal-field-error{color:var(--danger-600)}.portal-documents{display:grid;margin:0;padding:0;border-top:1px solid var(--line-soft);list-style:none}.portal-document{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line-soft)}.portal-document:last-child{border-bottom:0}.portal-document-info{display:grid;flex:1;gap:6px;min-width:0}.portal-document-info strong em{color:var(--danger-600);font-style:normal}.portal-document-info .muted{font-size:.84rem}.portal-document-file{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;border-radius:10px;padding:8px 10px;background:rgba(var(--brand-primary-rgb),.06)}.portal-document-file>div:first-child{display:grid;gap:2px;min-width:0}.portal-document-file>div:first-child span:first-child{overflow-wrap:anywhere;color:var(--text-strong)}.portal-document-actions{display:flex;gap:6px}.portal-document-status{color:var(--text-muted);font-size:.84rem}.portal-document-status.is-pending{color:var(--danger-600);font-weight:600}.portal-upload{position:relative;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;min-width:112px;padding:0 16px;cursor:pointer}.portal-upload input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.portal-upload:focus-within{box-shadow:0 0 0 4px rgba(var(--brand-primary-rgb),.18)}.portal-upload.is-disabled{cursor:not-allowed;opacity:.65}.portal-savebar{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border-soft);border-radius:16px;padding:12px 14px;background:#fffffff5;box-shadow:0 12px 32px #1717171a}.portal-savebar-status{min-width:0}.portal-savebar-status .muted{font-size:.86rem}.portal-savebar .primary-button{flex-shrink:0;padding:0 20px}.employee-self-service-section{display:grid;gap:10px}.employee-self-service-section h3{margin:0;font-size:1rem}.employee-self-service-values{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 18px;margin:0}.employee-self-service-values div{display:grid;gap:2px}.employee-self-service-values dt{color:var(--text-muted);font-size:.8rem}.employee-self-service-values dd{margin:0;color:var(--text-strong);overflow-wrap:anywhere}@media(max-width:760px){.portal-header{padding:10px 16px}.portal-brand .muted{display:none}.portal-main{gap:16px;padding:16px 16px 32px}.portal-facts,.portal-field-grid{grid-template-columns:minmax(0,1fr)}.portal-card-header{flex-direction:column}.portal-document{flex-direction:column;align-items:stretch}.portal-upload{width:100%}.portal-savebar{bottom:8px;flex-direction:column;align-items:stretch}.portal-savebar .primary-button{width:100%}.portal-savebar-hint{display:none}}.registration-intro h1{margin:0;font-size:clamp(1.4rem,3vw,1.8rem)}.registration-intro form{max-width:420px}.registration-intro a,.login-register a{color:var(--brand-primary);font-weight:600}.registration-sent{display:grid;justify-items:start;gap:8px}.registration-sent h2{margin:0}.login-register{margin-top:18px;padding-top:16px;border-top:1px solid var(--line-soft)}.login-register p{margin:0}.login-register-button{display:inline-flex;align-items:center;justify-content:center;padding:0 16px}.registrations-share{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px}.registrations-share p{margin:4px 0 0}.registrations-share-link{display:flex;align-items:center;gap:8px;min-width:0}.registrations-share-link code{overflow-wrap:anywhere;border-radius:8px;padding:8px 10px;background:rgba(var(--brand-primary-rgb),.08);color:var(--text-strong);font-size:.86rem}.registrations-filters{display:flex;flex-wrap:wrap;gap:8px}.registrations-filters button{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid rgba(var(--brand-primary-rgb),.4);border-radius:999px;padding:6px 14px;background:#fff;color:var(--text-medium)}.registrations-filters button span{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:rgba(var(--brand-primary-rgb),.14);color:var(--brand-primary);font-size:.78rem;font-weight:700}.registrations-filters button.is-active{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff}.registrations-filters button.is-active span{background:#ffffff40;color:#fff}.registrations-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);align-items:start;gap:20px}.registrations-list{padding:8px}.registrations-list ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.registrations-list li button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid transparent;border-radius:12px;padding:10px 12px;background:transparent;color:inherit;text-align:left}.registrations-list li button:hover{background:rgba(var(--brand-primary-rgb),.06);transform:none}.registrations-list li button.is-selected{border-color:rgba(var(--brand-primary-rgb),.35);background:rgba(var(--brand-primary-rgb),.1)}.registrations-list-main,.registrations-list-meta{display:grid;gap:2px;min-width:0}.registrations-list-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.registrations-list-meta{flex-shrink:0;justify-items:end;font-size:.8rem}.registration-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;background:rgba(var(--brand-primary-rgb),.12);color:var(--brand-primary);font-size:.78rem;font-weight:600;white-space:nowrap}.registration-status.is-approved{background:var(--success-100);color:var(--success-600)}.registration-status.is-rejected{background:var(--danger-100);color:var(--danger-600)}.registration-status.is-draft{background:#1717170f;color:var(--text-muted)}.registrations-detail{display:grid;gap:20px;min-width:0}.registrations-detail .employee-profile-card p{margin:0}.registration-contract{display:flex;flex-wrap:wrap;gap:8px;margin:0;border:0;padding:0}.registration-contract legend{margin-bottom:8px;padding:0;color:var(--text-medium);font-size:.95rem}.registration-reject{display:grid;gap:12px}.registration-reject label{display:grid;gap:6px}.registration-reject textarea{width:100%;padding:10px 12px;resize:vertical}.registration-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.registration-actions button{padding:0 18px}@media(max-width:980px){.registrations-layout{grid-template-columns:minmax(0,1fr)}}
