@font-face {font-family: "Sora";font-style: normal;font-weight: 300;font-display: swap;src: url("/fonts/sora-300.woff2") format("woff2");}@font-face {font-family: "Sora";font-style: normal;font-weight: 400;font-display: swap;src: url("/fonts/sora-400.woff2") format("woff2");}@font-face {font-family: "Sora";font-style: normal;font-weight: 600;font-display: swap;src: url("/fonts/sora-600.woff2") format("woff2");}@font-face {font-family: "Sora";font-style: normal;font-weight: 700;font-display: swap;src: url("/fonts/sora-700.woff2") format("woff2");}@font-face {font-family: "JetBrains Mono";font-style: normal;font-weight: 400;font-display: swap;src: url("/fonts/jetbrains-mono-400.woff2") format("woff2");}@font-face {font-family: "JetBrains Mono";font-style: normal;font-weight: 500;font-display: swap;src: url("/fonts/jetbrains-mono-500.woff2") format("woff2");}@font-face {font-family: "JetBrains Mono";font-style: normal;font-weight: 700;font-display: swap;src: url("/fonts/jetbrains-mono-700.woff2") format("woff2");}:root {--pw-navy-900:    #11203D;--pw-navy-800:    #1B2E55;--pw-navy-700:    #2A3F6F;--pw-navy-100:    #E5EAF4;--pw-nav-blue:       #4B6DA4;--pw-nav-blue-dark:  #3D5A8C;--pw-nav-blue-light: #6D8AC0;--pw-indigo-700:  #4F5FC9;--pw-indigo-600:  #5A6FD8;--pw-indigo-500:  #667EEA;--pw-indigo-400:  #8B9BF1;--pw-indigo-100:  #E8ECFC;--pw-indigo-50:   #F3F5FE;--pw-violet-500:  #764BA2;--pw-grad-brand:   linear-gradient(135deg, #667EEA 0%, #764BA2 100%);--pw-grad-banner:  linear-gradient(135deg, #667EEA 0%, #5A6FD8 100%);--pw-grey-50:   #F8F9FA;--pw-grey-100:  #F1F3F5;--pw-grey-200:  #E9ECEF;--pw-grey-300:  #DEE2E6;--pw-grey-400:  #CED4DA;--pw-grey-500:  #ADB5BD;--pw-grey-600:  #6C757D;--pw-grey-700:  #495057;--pw-grey-800:  #343A40;--pw-grey-900:  #2C3E50;--pw-black:     #11181F;--pw-white:     #FFFFFF;--pw-success-700: #1E7E34;--pw-success-500: #27AE60;--pw-success-100: #D4EDDA;--pw-warning-700: #B8860B;--pw-warning-500: #F39C12;--pw-warning-100: #FFF3CD;--pw-danger-700:  #B21F2D;--pw-danger-500:  #E74C3C;--pw-danger-100:  #F8D7DA;--pw-info-500:    #4FACFE;--pw-info-100:    #D1ECF1;--pw-kpi-people:    #4F5FC9;--pw-kpi-turnover:  #E55A6E;--pw-kpi-absence:   #2BB3C0;--pw-kpi-cost:      #2EA363;--pw-kpi-age:       #E89B3C;--pw-kpi-tenure:    #8E7CC3;--pw-kpi-supervisor:#5C7FBA;--pw-kpi-gender:    #C26B82;--fg-1: var(--pw-grey-900);--fg-2: var(--pw-grey-700);--fg-3: var(--pw-grey-600);--fg-4: var(--pw-grey-500);--fg-on-brand: var(--pw-white);--bg-app:        var(--pw-grey-50);--bg-surface:    var(--pw-white);--bg-surface-2:  var(--pw-grey-100);--bg-sidebar:    var(--pw-grey-50);--bg-navbar:     var(--pw-nav-blue);--bg-overlay:    rgba(17, 24, 31, 0.55);--border-subtle:  var(--pw-grey-200);--border-default: var(--pw-grey-300);--border-strong:  var(--pw-grey-400);--border-focus:   var(--pw-indigo-500);--link:       var(--pw-indigo-500);--link-hover: var(--pw-indigo-700);--font-sans:    "Sora", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:    "JetBrains Mono", "SFMono-Regular", Menlo, Monaco, Consolas, "Courier New", monospace;--font-display: "Sora", "Helvetica Neue", sans-serif;--fs-12: 12px;   --lh-12: 16px;--fs-13: 13px;   --lh-13: 18px;--fs-14: 14px;   --lh-14: 20px;--fs-16: 16px;   --lh-16: 24px;--fs-18: 18px;   --lh-18: 26px;--fs-20: 20px;   --lh-20: 28px;--fs-24: 24px;   --lh-24: 32px;--fs-28: 28px;   --lh-28: 36px;--fs-32: 32px;   --lh-32: 40px;--fs-40: 40px;   --lh-40: 48px;--fs-48: 48px;   --lh-48: 56px;--fw-light:    300;--fw-regular:  400;--fw-semibold: 600;--fw-bold:     700;--sp-0:  0;--sp-1:  4px;--sp-2:  8px;--sp-3:  12px;--sp-4:  16px;--sp-5:  20px;--sp-6:  24px;--sp-8:  32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--sp-20: 80px;--sp-24: 96px;--r-xs:  4px;--r-sm:  6px;--r-md:  8px;--r-lg:  12px;--r-xl:  15px;--r-2xl: 20px;--r-pill: 999px;--shadow-xs:      0 1px 2px rgba(17, 24, 31, 0.06);--shadow-sm:      0 2px 4px rgba(17, 24, 31, 0.06);--shadow-card:    0 5px 15px rgba(0, 0, 0, 0.08);--shadow-hover:   0 10px 25px rgba(0, 0, 0, 0.15);--shadow-modal:   0 20px 40px rgba(0, 0, 0, 0.20);--shadow-sidebar: 2px 0 10px rgba(0, 0, 0, 0.10);--ring-focus: 0 0 0 3px rgba(102, 126, 234, 0.25);--nav-height:         60px;--sidebar-width:      260px;--sidebar-collapsed:  70px;--container-max:      1400px;--t-fast:     150ms;--t-base:     250ms;--t-slow:     400ms;--ease-out:   cubic-bezier(0.2, 0.7, 0.3, 1);--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);}html { font-family: var(--font-sans); }body {font-family: var(--font-sans);font-size: var(--fs-16);line-height: var(--lh-16);color: var(--fg-2);background: var(--bg-app);-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}h1, .pw-h1 {font-family: var(--font-display);font-size: var(--fs-40);line-height: var(--lh-40);font-weight: var(--fw-bold);color: var(--fg-1);letter-spacing: -0.01em;text-wrap: balance;}h2, .pw-h2 {font-family: var(--font-display);font-size: var(--fs-28);line-height: var(--lh-28);font-weight: var(--fw-semibold);color: var(--fg-1);letter-spacing: -0.005em;text-wrap: balance;}h3, .pw-h3 {font-size: var(--fs-24);line-height: var(--lh-24);font-weight: var(--fw-semibold);color: var(--fg-1);}h4, .pw-h4 {font-size: var(--fs-20);line-height: var(--lh-20);font-weight: var(--fw-semibold);color: var(--fg-1);}h5, .pw-h5 {font-size: var(--fs-18);line-height: var(--lh-18);font-weight: var(--fw-semibold);color: var(--fg-1);}h6, .pw-h6 {font-size: var(--fs-14);line-height: var(--lh-14);font-weight: var(--fw-semibold);color: var(--fg-3);text-transform: uppercase;letter-spacing: 0.04em;}p, .pw-body {font-size: var(--fs-16);line-height: var(--lh-16);color: var(--fg-2);text-wrap: pretty;}.pw-small   { font-size: var(--fs-14); line-height: var(--lh-14); }.pw-caption { font-size: var(--fs-12); line-height: var(--lh-12); color: var(--fg-3); }.pw-label   { font-size: var(--fs-14); line-height: var(--lh-14); font-weight: var(--fw-semibold); color: var(--fg-1); }.pw-kpi-value {font-size: var(--fs-32);line-height: 1;font-weight: var(--fw-bold);color: var(--fg-1);font-variant-numeric: tabular-nums;}.pw-mono, code, kbd, pre, samp {font-family: var(--font-mono);font-size: 0.92em;}a {color: var(--link);text-decoration: none;transition: color var(--t-fast) var(--ease-out);}a:hover { color: var(--link-hover); text-decoration: underline; }.pw-num, td.pw-num, .pw-table td.num {font-variant-numeric: tabular-nums;text-align: right;}:where(button, a, input, select, textarea, [tabindex]):focus-visible {outline: none;box-shadow: var(--ring-focus);border-color: var(--border-focus);}*, *::before, *::after { box-sizing: border-box; }body { margin: 0; }button { font: inherit; cursor: pointer; }.pw-app {min-height: 100vh;background: var(--bg-app);display: flex;flex-direction: column;}.pw-shell {display: flex;flex: 1;min-height: calc(100vh - var(--nav-height));}.pw-shell__main {flex: 1;padding: var(--sp-6);background: var(--bg-app);min-width: 0;}.pw-navbar {position: sticky; top: 0;height: var(--nav-height);background: var(--bg-navbar);color: var(--pw-white);display: flex;align-items: center;padding: 0 var(--sp-4);gap: var(--sp-3);z-index: 30;box-shadow: 0 1px 0 rgba(255,255,255,0.04);}.pw-navbar__toggle {background: transparent;border: 0;color: var(--pw-white);width: 40px; height: 40px;border-radius: var(--r-md);display: inline-flex; align-items: center; justify-content: center;font-size: 22px;transition: background var(--t-fast) var(--ease-out);}.pw-navbar__toggle:hover { background: rgba(255,255,255,0.1); }.pw-navbar__brand {display: inline-flex; align-items: center; gap: var(--sp-2);margin-right: var(--sp-4);}.pw-navbar__brand img { height: 28px; display: block; }.pw-navbar__brand-env {font-size: var(--fs-12);color: var(--pw-warning-500);text-transform: uppercase;letter-spacing: 0.06em;font-weight: var(--fw-semibold);margin-left: var(--sp-2);}.pw-navbar__nav { display: flex; gap: var(--sp-2); align-items: center; }.pw-navbar__icon-btn {background: transparent; border: 0; color: rgba(255,255,255,0.85);width: 40px; height: 40px;border-radius: var(--r-md);display: inline-flex; align-items: center; justify-content: center;font-size: 20px;transition: background var(--t-fast) var(--ease-out), color var(--t-fast);}.pw-navbar__icon-btn:hover { background: rgba(255,255,255,0.1); color: white; }.pw-navbar__spacer { flex: 1; }.pw-navbar__user {display: flex; align-items: center; gap: var(--sp-3);color: var(--pw-white);font-size: var(--fs-14);}.pw-navbar__user-name { font-weight: var(--fw-regular); opacity: 0.9; }.pw-country-chip {display: inline-flex; align-items: center; gap: var(--sp-2);height: 32px; padding: 0 var(--sp-3);background: rgba(255,255,255,0.08);border: 1px solid rgba(255,255,255,0.15);border-radius: var(--r-pill);color: white; font-size: var(--fs-13);cursor: pointer;transition: background var(--t-fast) var(--ease-out);}.pw-country-chip:hover { background: rgba(255,255,255,0.14); }.pw-country-chip img { width: 18px; height: 18px; border-radius: 50%; object-fit: cover; }.pw-country-chip .mdi { font-size: 14px; opacity: 0.7; }.pw-logout {display: inline-flex; align-items: center; gap: var(--sp-2);height: 32px; padding: 0 var(--sp-3);background: var(--pw-danger-500);color: white; border: 0;border-radius: var(--r-md);font-size: var(--fs-13);font-weight: var(--fw-semibold);transition: background var(--t-fast) var(--ease-out);}.pw-logout:hover { background: var(--pw-danger-700); }.pw-sidebar {width: var(--sidebar-width);background: var(--bg-sidebar);flex-shrink: 0;overflow-y: auto;box-shadow: var(--shadow-sidebar);transition: width var(--t-base) var(--ease-out);}.pw-sidebar { overflow-x: hidden; }.pw-sidebar.collapsed { width: var(--sidebar-collapsed); }.pw-sidebar.collapsed .pw-sidebar__label   { display: none; }.pw-sidebar.collapsed .pw-sidebar__chevron { display: none; }.pw-sidebar.collapsed .pw-sidebar__link    { justify-content: center; padding: 14px 0; gap: 0; }.pw-sidebar.collapsed .pw-sidebar__link:hover { padding-left: 0; }.pw-sidebar.collapsed .pw-sidebar__submenu { display: none !important; }.pw-sidebar.collapsed .pw-sidebar__header  { justify-content: center; padding: var(--sp-3) 0; }.pw-sidebar__nav { list-style: none; padding: 0; margin: 0; }.pw-sidebar__item { position: relative; border-bottom: 1px solid rgba(0,0,0,0.04); }.pw-sidebar__item--group {position: relative;border-bottom: 1px solid rgba(0,0,0,0.04);font-weight: bold;padding: 8px var(--sp-5) 8px 46px;font-size: var(--fs-13);}.pw-sidebar__link {display: flex; align-items: center; gap: var(--sp-3);padding: 10px var(--sp-5);color: var(--pw-grey-700);text-decoration: none;cursor: pointer;font-size: var(--fs-14);position: relative;transition: background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),padding var(--t-fast) var(--ease-out);}.pw-sidebar__link::before {content: ""; position: absolute; left: 0; top: 0;width: 3px; height: 100%;background: var(--pw-indigo-500);transform: scaleY(0);transition: transform var(--t-base) var(--ease-out);transform-origin: center;}.pw-sidebar__link:hover {background: var(--pw-nav-blue);color: white;padding-left: 25px;}.pw-sidebar__link:hover::before { transform: scaleY(1); }.pw-sidebar__link:hover .pw-sidebar__icon { color: white; }.pw-sidebar__link.active {background: var(--pw-indigo-500);color: white;}.pw-sidebar__link.active::before { transform: scaleY(1); background: white; }.pw-sidebar__link.active .pw-sidebar__icon { color: white; }.pw-sidebar__icon {font-size: 20px;width: 24px;text-align: center;color: var(--pw-grey-600);flex-shrink: 0;}.pw-sidebar__label { flex: 1; }.pw-sidebar__chevron {font-size: 18px;transition: transform var(--t-base) var(--ease-out);opacity: 0.6;}.pw-sidebar__item.open > .pw-sidebar__link .pw-sidebar__chevron {transform: rotate(180deg);}.pw-sidebar__submenu {list-style: none; padding: 0; margin: 0;max-height: 0; overflow: hidden;background: var(--pw-grey-100);transition: max-height var(--t-slow) var(--ease-out);}.pw-sidebar__item.open > .pw-sidebar__submenu { max-height: 800px; }.pw-sidebar__submenu .pw-sidebar__link {padding: 8px var(--sp-5) 8px 56px;font-size: var(--fs-13);}.pw-sidebar__submenu .pw-sidebar__link.active {background: var(--pw-indigo-400);color: white;}.pw-sidebar__header {padding: var(--sp-3) var(--sp-5);display: flex; align-items: center; gap: var(--sp-3);font-weight: var(--fw-semibold);font-size: var(--fs-14);color: var(--pw-indigo-500);border-bottom: 1px solid var(--border-subtle);}.pw-card {background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-card);padding: 25px;transition: transform var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out);position: relative;overflow: hidden;}.pw-card--interactive { cursor: pointer; }.pw-card--interactive::before {content: ""; position: absolute; inset: 0 0 auto 0; height: 4px;background: var(--pw-grad-brand);transform: translateX(-100%);transition: transform var(--t-base) var(--ease-out);}.pw-card--interactive:hover {transform: translateY(-5px);box-shadow: var(--shadow-hover);}.pw-card--interactive:hover::before { transform: translateX(0); }.pw-hero {background: var(--pw-indigo-500);color: white;border-radius: var(--r-xl);padding: 30px;margin-bottom: var(--sp-5);position: relative;}.pw-hero__title {font-family: var(--font-display);font-size: var(--fs-40);font-weight: var(--fw-bold);line-height: 1.1;margin: 0 0 var(--sp-2) 0;text-align: center;color: white;letter-spacing: -0.01em;}.pw-hero__subtitle {text-align: center;margin: 0;font-size: var(--fs-18);font-weight: var(--fw-regular);color: rgba(255, 255, 255, 0.95);}.pw-hero__actions {position: absolute; top: 20px; right: 20px;display: flex; gap: var(--sp-2);}.pw-btn {display: inline-flex; align-items: center; gap: var(--sp-2);height: 36px;padding: 0 var(--sp-4);border: 1px solid transparent;border-radius: var(--r-md);font-size: var(--fs-14);font-weight: var(--fw-semibold);text-decoration: none;transition: background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out);white-space: nowrap;}.pw-btn .mdi { font-size: 16px; }.pw-btn--primary {background: var(--pw-indigo-500); color: white; border-color: var(--pw-indigo-500);}.pw-btn--primary:hover { background: var(--pw-indigo-600); border-color: var(--pw-indigo-600); }.pw-btn--secondary {background: white; color: var(--fg-1); border-color: var(--border-default);}.pw-btn--secondary:hover { background: var(--pw-grey-100); }.pw-btn--success {background: var(--pw-success-500); color: white; border-color: var(--pw-success-500);}.pw-btn--success:hover { background: var(--pw-success-700); border-color: var(--pw-success-700); }.pw-btn--info {background: var(--pw-info-500); color: white; border-color: var(--pw-info-500);}.pw-btn--info:hover { filter: brightness(0.92); }.pw-btn--danger {background: var(--pw-danger-500); color: white; border-color: var(--pw-danger-500);}.pw-btn--danger:hover { background: var(--pw-danger-700); border-color: var(--pw-danger-700); }.pw-btn--ghost-light {background: rgba(255,255,255,0.12);border-color: rgba(255,255,255,0.3);color: white;}.pw-btn--ghost-light:hover {background: rgba(255,255,255,0.22);border-color: rgba(255,255,255,0.5);}.pw-btn--sm { height: 28px; padding: 0 var(--sp-3); font-size: var(--fs-13); }.pw-btn--lg { height: 44px; padding: 0 var(--sp-5); font-size: var(--fs-16); }.pw-form-group { display: flex; flex-direction: column; gap: var(--sp-2); }.pw-form-group__label {font-size: var(--fs-14);font-weight: var(--fw-semibold);color: var(--fg-1);}.pw-input, .pw-select {height: 38px;padding: 0 var(--sp-3);border: 1px solid var(--border-default);border-radius: var(--r-md);background: var(--bg-surface);font-size: var(--fs-14);color: var(--fg-1);font-family: inherit;transition: border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out);width: 100%;}.pw-input:focus, .pw-select:focus {outline: none;border-color: var(--border-focus);box-shadow: var(--ring-focus);}.pw-input::placeholder { color: var(--fg-4); }textarea.pw-input { height: auto; padding: var(--sp-2) var(--sp-3); resize: vertical; }.pw-select {appearance: none;-webkit-appearance: none;padding-right: 36px;background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%236C757D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat: no-repeat;background-position: right 12px center;}.pw-form-group--error .pw-input,.pw-form-group--error .pw-select {border-color: var(--pw-danger-500);box-shadow: 0 0 0 2px color-mix(in srgb, var(--pw-danger-500) 20%, transparent);}.pw-form-error {font-size: var(--fs-12);color: var(--pw-danger-700);margin-top: 2px;}.pw-required {color: var(--pw-danger-500);margin-left: 2px;}.pw-form-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));gap: var(--sp-4) var(--sp-5);margin-bottom: var(--sp-4);}.pw-form-grid--wide {grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));}input[type="date"].pw-input,input[type="file"].pw-input { padding: 6px var(--sp-3); height: auto; }.pw-filters {background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-card);padding: 25px;margin-bottom: var(--sp-6);}.pw-filters__grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: var(--sp-5);}.pw-kpi {background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-card);padding: 25px;position: relative;overflow: hidden;transition: transform var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out);cursor: pointer;}.pw-kpi::before {content: ""; position: absolute; inset: 0 0 auto 0; height: 4px;background: var(--pw-grad-brand);transform: translateX(-100%);transition: transform var(--t-base) var(--ease-out);}.pw-kpi:hover { transform: translateY(-5px); box-shadow: var(--shadow-hover); }.pw-kpi:hover::before { transform: translateX(0); }.pw-kpi__header {display: flex; align-items: center; justify-content: space-between;margin-bottom: var(--sp-4);}.pw-kpi__title {font-size: var(--fs-16);font-weight: var(--fw-semibold);color: var(--fg-1);margin: 0;}.pw-kpi__icon {width: 45px; height: 45px;border-radius: var(--r-lg);display: flex; align-items: center; justify-content: center;color: white;font-size: 20px;flex-shrink: 0;}.pw-kpi__icon.bg-people    { background: var(--pw-kpi-people); }.pw-kpi__icon.bg-turnover  { background: var(--pw-kpi-turnover); }.pw-kpi__icon.bg-absence   { background: var(--pw-kpi-absence); }.pw-kpi__icon.bg-cost      { background: var(--pw-kpi-cost); }.pw-kpi__icon.bg-age       { background: var(--pw-kpi-age); }.pw-kpi__icon.bg-tenure    { background: var(--pw-kpi-tenure); }.pw-kpi__icon.bg-supervisor{ background: var(--pw-kpi-supervisor); }.pw-kpi__icon.bg-gender    { background: var(--pw-kpi-gender); }.pw-kpi__value {font-size: 36px;font-weight: var(--fw-bold);color: var(--fg-1);line-height: 1;margin-bottom: var(--sp-2);font-variant-numeric: tabular-nums;}.pw-kpi__subtitle {font-size: var(--fs-14);color: var(--fg-3);margin-bottom: var(--sp-3);}.pw-kpi__trend {display: inline-flex; align-items: center; gap: 4px;font-size: var(--fs-13);font-weight: var(--fw-semibold);}.pw-kpi__trend.up    { color: var(--pw-success-500); }.pw-kpi__trend.down  { color: var(--pw-danger-500); }.pw-kpi__trend.flat  { color: var(--pw-warning-500); }.pw-badge {display: inline-flex; align-items: center;padding: 4px 12px;border-radius: var(--r-pill);font-size: var(--fs-12);font-weight: var(--fw-semibold);text-transform: uppercase;letter-spacing: 0.04em;}.pw-badge--active   { background: var(--pw-success-100); color: var(--pw-success-700); }.pw-badge--inactive { background: var(--pw-danger-100);  color: var(--pw-danger-700); }.pw-badge--pending  { background: var(--pw-warning-100); color: var(--pw-warning-700); }.pw-badge--warning  { background: var(--pw-warning-100); color: var(--pw-warning-700); }.pw-badge--info     { background: var(--pw-indigo-100);  color: var(--pw-indigo-700); }.pw-badge--neutral  { background: var(--pw-grey-200);    color: var(--pw-grey-700); }.pw-section-title {margin: 0 0 var(--sp-3);padding-bottom: var(--sp-2);border-bottom: 1px solid var(--border-subtle);font-size: var(--fs-13);font-weight: var(--fw-semibold);color: var(--fg-3);text-transform: uppercase;letter-spacing: 0.06em;display: flex;align-items: center;gap: 6px;}.pw-table-wrap {background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-card);padding: 25px;overflow: hidden;}.pw-table-wrap__title {display: flex; align-items: center; gap: var(--sp-3);font-size: var(--fs-20);font-weight: var(--fw-bold);color: var(--fg-1);margin: 0 0 var(--sp-4) 0;}.pw-table-wrap__title .mdi { color: var(--pw-indigo-500); font-size: 24px; }.pw-table {width: 100%;border-collapse: collapse;font-size: var(--fs-14);}.pw-table thead th {background: var(--bg-surface-2);text-align: left;font-weight: var(--fw-semibold);color: var(--fg-1);padding: 12px 15px;border-bottom: 1px solid var(--border-default);white-space: nowrap;}.pw-table tbody td {padding: 12px 15px;border-bottom: 1px solid var(--border-subtle);color: var(--fg-2);}.pw-table tbody tr { transition: background var(--t-fast) var(--ease-out); }.pw-table tbody tr:hover { background: var(--pw-grey-100); }.pw-table .num { text-align: right; font-variant-numeric: tabular-nums; color: var(--fg-1); }.pw-charts {display: grid;grid-template-columns: 1fr 1fr;gap: var(--sp-6);margin-bottom: var(--sp-6);}@media (max-width: 1100px) { .pw-charts { grid-template-columns: 1fr; } }.pw-chart-card {background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-card);padding: 25px;}.pw-chart-card__title {font-size: var(--fs-18);font-weight: var(--fw-semibold);color: var(--fg-1);text-align: center;margin: 0 0 var(--sp-4) 0;}.pw-bar-chart {display: flex; align-items: flex-end; gap: 12px;height: 220px;padding: var(--sp-3) 0;}.pw-bar-chart__bar {flex: 1; background: var(--pw-grad-brand);border-radius: var(--r-sm) var(--r-sm) 0 0;position: relative; min-height: 12px;}.pw-bar-chart__bar::after {content: attr(data-label);position: absolute; bottom: -22px; left: 50%;transform: translateX(-50%);font-size: var(--fs-12); color: var(--fg-3);font-weight: var(--fw-semibold);}.pw-bar-chart__bar::before {content: attr(data-value);position: absolute; top: -22px; left: 50%;transform: translateX(-50%);font-size: var(--fs-12); color: var(--fg-1);font-weight: var(--fw-semibold);font-variant-numeric: tabular-nums;}.pw-donut {width: 200px; height: 200px;margin: 0 auto;border-radius: 50%;display: grid; place-items: center;position: relative;}.pw-donut::after {content: ""; position: absolute; inset: 30px;background: var(--bg-surface); border-radius: 50%;}.pw-donut__center {position: relative; z-index: 1; text-align: center;}.pw-donut__center strong {display: block; font-size: var(--fs-24); font-weight: var(--fw-bold); color: var(--fg-1);}.pw-donut__center span { font-size: var(--fs-12); color: var(--fg-3); }.pw-donut__legend {display: flex; flex-wrap: wrap; gap: var(--sp-3); justify-content: center;margin-top: var(--sp-4); font-size: var(--fs-13); color: var(--fg-2);}.pw-donut__legend i {display: inline-block; width: 12px; height: 12px; border-radius: 3px; vertical-align: middle;margin-right: 6px;}.pw-kpi-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));gap: var(--sp-5);margin-bottom: var(--sp-6);}.pw-modal-backdrop {position: fixed; inset: 0;background: var(--bg-overlay);backdrop-filter: blur(5px);display: flex; align-items: center; justify-content: center;z-index: 50;padding: var(--sp-4);}.pw-modal {background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-modal);max-width: 560px; width: 100%;overflow: hidden;}.pw-modal__header {display: flex; align-items: center; justify-content: space-between;padding: 20px 25px;border-bottom: 1px solid var(--border-subtle);}.pw-modal__title {display: flex; align-items: center; gap: var(--sp-2);font-size: var(--fs-20);font-weight: var(--fw-semibold);margin: 0;color: var(--fg-1);}.pw-modal__title .mdi { color: var(--pw-indigo-500); }.pw-modal__close {background: transparent; border: 0; font-size: 24px; color: var(--fg-3);width: 32px; height: 32px;border-radius: var(--r-md);display: inline-flex; align-items: center; justify-content: center;}.pw-modal__close:hover { background: var(--pw-grey-100); color: var(--fg-1); }.pw-modal__body { padding: 25px; }.pw-modal__footer {display: flex; gap: var(--sp-2); justify-content: flex-end;padding: 16px 25px;border-top: 1px solid var(--border-subtle);background: var(--bg-surface-2);}.pw-login {min-height: 100vh;display: grid;grid-template-columns: 1fr 1fr;background: var(--bg-app);}@media (max-width: 800px) { .pw-login { grid-template-columns: 1fr; } }.pw-login__art {background: var(--pw-nav-blue);display: flex; align-items: center; justify-content: center;padding: var(--sp-12);color: white;position: relative;overflow: hidden;}.pw-login__art::before, .pw-login__art::after {content: ""; position: absolute; border-radius: 50%;background: rgba(255,255,255,0.08);}.pw-login__art::before { width: 480px; height: 480px; top: -120px; right: -200px; }.pw-login__art::after  { width: 360px; height: 360px; bottom: -180px; left: -100px; }.pw-login__art-inner { position: relative; z-index: 1; max-width: 420px; }.pw-login__art-inner h1 {font-family: var(--font-display);font-size: 44px;line-height: 1.1;font-weight: var(--fw-bold);color: white;margin: 0 0 var(--sp-4) 0;letter-spacing: -0.01em;}.pw-login__art-inner p {font-size: var(--fs-18);line-height: var(--lh-18);color: rgba(255,255,255,0.95);margin: 0;}.pw-login__wordmark {width: 200px;height: 40px;margin-bottom: var(--sp-8);background-color: var(--pw-nav-blue);-webkit-mask: url("/assets/peopleweb-logo.png") left center / contain no-repeat;mask: url("/assets/peopleweb-logo.png") left center / contain no-repeat;}.pw-login__form {display: flex; align-items: center; justify-content: center;padding: var(--sp-12);}.pw-login__panel {width: 100%;max-width: 380px;}.pw-login__logo { height: 36px; margin-bottom: var(--sp-8); }.pw-login__title {font-family: var(--font-display);font-size: var(--fs-28);font-weight: var(--fw-semibold);color: var(--fg-1);margin: 0 0 var(--sp-2) 0;}.pw-login__hint {font-size: var(--fs-14);color: var(--fg-3);margin: 0 0 var(--sp-6) 0;}.pw-login__form-rows { display: flex; flex-direction: column; gap: var(--sp-4); }.pw-login__forgot {text-align: right;font-size: var(--fs-13);margin-top: -8px;}.pw-login__submit { width: 100%; justify-content: center; height: 44px; font-size: var(--fs-16); }.pw-pipa {position: fixed; bottom: 20px; right: 20px;width: 56px; height: 56px;border-radius: 50%;background: var(--pw-grad-brand);display: grid; place-items: center;box-shadow: var(--shadow-hover);cursor: pointer;z-index: 20;border: 0;transition: transform var(--t-fast) var(--ease-out);}.pw-pipa:hover { transform: translateY(-2px); }.pw-pipa img { width: 44px; height: 44px; display: block; }.pw-pipa-panel {position: fixed; bottom: 90px; right: 20px;width: 340px;max-height: 480px;background: var(--bg-surface);border-radius: var(--r-xl);box-shadow: var(--shadow-modal);display: flex; flex-direction: column;z-index: 21;overflow: hidden;border: 1px solid var(--border-subtle);}.pw-pipa-panel__header {background: var(--pw-nav-blue-light);color: white;padding: var(--sp-4);display: flex; align-items: center; gap: var(--sp-3);}.pw-pipa-panel__header img { width: 36px; height: 36px; }.pw-pipa-panel__header h4 {margin: 0; color: white; font-size: var(--fs-16); font-weight: var(--fw-semibold);}.pw-pipa-panel__header p { margin: 0; font-size: var(--fs-12); opacity: 0.85;color: white; }.pw-pipa-panel__body {flex: 1; padding: var(--sp-4);display: flex; flex-direction: column; gap: var(--sp-3);overflow-y: auto;}.pw-pipa-msg {font-size: var(--fs-14);line-height: var(--lh-14);padding: 10px 14px;border-radius: var(--r-lg);max-width: 85%;}.pw-pipa-msg.bot {background: var(--pw-indigo-50);color: var(--fg-1);border-bottom-left-radius: 4px;align-self: flex-start;}.pw-pipa-msg.user {background: var(--pw-indigo-500);color: white;border-bottom-right-radius: 4px;align-self: flex-end;}.pw-pipa-panel__compose {padding: var(--sp-3) var(--sp-4);border-top: 1px solid var(--border-subtle);display: flex; gap: var(--sp-2);}.pw-pipa-panel__header .pw-pipa-hbtn {background: none; border: 0; color: white; cursor: pointer;font-size: 18px; padding: 4px; line-height: 1; opacity: 0.85;}.pw-pipa-panel__header .pw-pipa-hbtn:hover { opacity: 1; }.pw-pipa-mensajes {display: flex; flex-direction: column; gap: var(--sp-3);overflow-y: auto; flex: 1;}.pw-pipa-burbuja { display: flex; flex-direction: column; align-items: flex-start; }.pw-pipa-burbuja.user { align-items: flex-end; }.pw-pipa-ts { font-size: 11px; color: var(--fg-3); margin-top: 2px; }.pw-pipa-rating { display: flex; gap: var(--sp-1); margin-top: 2px; }.pw-pipa-rating button {background: none; border: 0; cursor: pointer; padding: 2px 4px;color: var(--fg-3); font-size: 15px;}.pw-pipa-rating button:hover { color: var(--pw-indigo-500); }.pw-pipa-typing {display: flex; gap: 4px; align-self: flex-start;background: var(--pw-indigo-50); border-radius: var(--r-lg);border-bottom-left-radius: 4px; padding: 12px 14px;}.pw-pipa-typing span {width: 7px; height: 7px; border-radius: 50%;background: var(--pw-indigo-500); opacity: 0.4;animation: pw-pipa-blink 1.2s infinite;}.pw-pipa-typing span:nth-child(2) { animation-delay: 0.2s; }.pw-pipa-typing span:nth-child(3) { animation-delay: 0.4s; }@keyframes pw-pipa-blink { 0%, 80%, 100% { opacity: 0.4; } 40% { opacity: 1; } }.pw-pipa-temas { display: flex; flex-direction: column; gap: var(--sp-2); }.pw-pipa-temas__titulo {font-size: var(--fs-13); font-weight: var(--fw-semibold);color: var(--fg-2); margin-bottom: var(--sp-1);}.pw-pipa-tema {display: flex; align-items: center; gap: var(--sp-3);padding: 10px 12px;border: 1px solid var(--border-default);border-radius: var(--r-lg);cursor: pointer;transition: background var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);}.pw-pipa-tema:hover { background: var(--pw-indigo-50); border-color: var(--pw-indigo-500); }.pw-pipa-tema .mdi { font-size: 20px; color: var(--pw-indigo-500); flex-shrink: 0; }.pw-pipa-tema__nombre { font-size: var(--fs-14); font-weight: var(--fw-semibold); color: var(--fg-1); }.pw-pipa-tema__desc { font-size: var(--fs-12); color: var(--fg-3); }.pw-pipa-msg p { margin: 0; }.pw-pipa-msg h4 { margin: 4px 0 2px; font-size: var(--fs-14); }.pw-pipa-msg ul, .pw-pipa-msg ol { margin: 4px 0; padding-left: 18px; }.pw-pipa-msg code {font-family: var(--font-mono); font-size: var(--fs-12);background: rgba(0, 0, 0, 0.06); border-radius: 3px; padding: 0 3px;}.pw-pipa-msg pre {background: rgba(0, 0, 0, 0.06); border-radius: var(--r-md);padding: 8px; overflow-x: auto; margin: 4px 0;}.pw-pipa-md-spacer { height: 6px; }.pw-pipa-panel__compose .pw-input { flex: 1; }.pw-page-header {display: flex; align-items: center; justify-content: space-between;margin-bottom: var(--sp-5);gap: var(--sp-4);}.pw-page-header h1 {font-size: var(--fs-28);font-weight: var(--fw-bold);color: var(--fg-1);margin: 0;}.pw-page-header__crumb {display: flex; align-items: center; gap: var(--sp-2);font-size: var(--fs-13);color: var(--fg-3);margin-bottom: var(--sp-1);}.pw-page-header__crumb .mdi { font-size: 14px; }.pw-tabs {display: flex; gap: var(--sp-1);flex-wrap: wrap;border-bottom: 1px solid var(--border-default);margin-bottom: var(--sp-5);}.pw-tabs__tab {padding: 10px var(--sp-4);background: transparent; border: 0;border-bottom: 2px solid transparent;color: var(--fg-3);font-size: var(--fs-14);font-weight: var(--fw-semibold);cursor: pointer;transition: color var(--t-fast), border-color var(--t-fast);margin-bottom: -1px;}.pw-tabs__tab:hover { color: var(--fg-1); }.pw-tabs__tab.active {color: var(--pw-indigo-500);border-bottom-color: var(--pw-indigo-500);}.pw-detail-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));gap: var(--sp-5) var(--sp-6);padding: 4px 0;}.pw-detail-row { display: flex; flex-direction: column; gap: 2px; }.pw-detail-row__label {font-size: var(--fs-12);font-weight: var(--fw-semibold);color: var(--fg-3);text-transform: uppercase;letter-spacing: 0.04em;}.pw-detail-row__value {font-size: var(--fs-16);color: var(--fg-1);}.pw-detail-grid div.pw-num,.pw-detail-grid span.pw-num {text-align: left;}.pw-avatar {width: 40px; height: 40px;border-radius: 50%;background: var(--pw-indigo-100);color: var(--pw-indigo-700);display: inline-flex; align-items: center; justify-content: center;font-weight: var(--fw-semibold);font-size: var(--fs-14);flex-shrink: 0;overflow: hidden;}.pw-avatar img { width: 100%; height: 100%; object-fit: cover; }.pw-avatar--sm { width: 28px; height: 28px; font-size: var(--fs-12); }.pw-avatar--lg { width: 80px; height: 80px; font-size: var(--fs-24); }.pw-status-dot {display: inline-block; width: 10px; height: 10px; border-radius: 50%;vertical-align: middle; margin-right: 6px;}.pw-status-dot.green  { background: var(--pw-success-500); }.pw-status-dot.yellow { background: var(--pw-warning-500); }.pw-status-dot.red    { background: var(--pw-danger-500); }.pw-org-layout {display: flex;gap: var(--sp-4);align-items: flex-start;}.pw-org-chart-card {flex: 1;min-width: 0;overflow-x: auto;}.pw-org-chart { min-height: 320px; }.pw-org-chart .google-visualization-orgchart-node {background: var(--bg-surface);border: 1px solid var(--border-subtle);border-radius: var(--r-md);box-shadow: var(--shadow-xs);font-family: var(--font-sans);padding: 0;}.pw-org-chart .google-visualization-orgchart-lineleft   { border-left:   1px solid var(--border-strong); }.pw-org-chart .google-visualization-orgchart-lineright  { border-right:  1px solid var(--border-strong); }.pw-org-chart .google-visualization-orgchart-linebottom { border-bottom: 1px solid var(--border-strong); }.pw-org-chart .pw-org-node {padding: var(--sp-2) var(--sp-3);min-width: 130px;max-width: 180px;text-align: center;font-size: var(--fs-12);color: var(--fg-2);line-height: 1.25;}.pw-org-chart .pw-org-node div { line-height: 1.25; }.pw-org-chart .pw-org-node__gerencia  { font-size: 11px; color: var(--fg-3); }.pw-org-chart .pw-org-node__unidad    { font-size: 11px; color: var(--pw-indigo-700); }.pw-org-chart .pw-org-node__cargo     { font-size: var(--fs-12); font-weight: var(--fw-semibold); color: var(--fg-1); margin: 2px 0; }.pw-org-chart .pw-org-node__ubicacion { font-size: 11px; color: var(--pw-danger-700); }.pw-org-chart .pw-org-node__foto {width: 64px; height: 64px;border-radius: 50%;object-fit: cover;display: block;margin: var(--sp-1) auto;border: 1px solid var(--border-subtle);background: var(--bg-surface-2);}.pw-org-chart .pw-org-node__nombre a {color: var(--link);font-weight: var(--fw-semibold);cursor: pointer;}.pw-org-chart .pw-org-node__nombre a:hover { color: var(--link-hover); text-decoration: underline; }.pw-org-chart .pw-org-node__pos {font-family: var(--font-mono);font-size: 10px;color: var(--fg-4);}.pw-org-chart .pw-org-node__counters {display: flex;justify-content: center;gap: var(--sp-2);margin-top: var(--sp-1);padding-top: var(--sp-1);border-top: 1px dashed var(--border-subtle);font-size: 11px;color: var(--fg-2);}.pw-org-chart .pw-org-node__counters .mdi { color: var(--fg-3); }.pw-org-chart .pw-org-node__nav {display: block;cursor: pointer;color: var(--pw-indigo-500);font-size: var(--fs-20);line-height: 1;}.pw-org-chart .pw-org-node__nav:hover { color: var(--pw-indigo-700); }.pw-org-perfil {flex: 0 0 280px;position: sticky;top: 76px;padding: var(--sp-4);}.pw-org-perfil--oculto { display: none; }.pw-org-perfil__cerrar {position: absolute;top: var(--sp-2); right: var(--sp-2);background: none; border: none;padding: 2px;cursor: pointer;color: var(--fg-3);font-size: var(--fs-16);line-height: 1;}.pw-org-perfil__cerrar:hover { color: var(--fg-1); }.pw-org-perfil-mini {flex: 0 0 auto;position: sticky;top: 76px;width: 40px; height: 40px;border-radius: 50%;border: 1px solid var(--border-subtle);background: var(--bg-surface);box-shadow: var(--shadow-sm);color: var(--pw-indigo-500);font-size: var(--fs-20);line-height: 1;cursor: pointer;display: flex; align-items: center; justify-content: center;}.pw-org-perfil-mini:hover { color: var(--pw-indigo-700); box-shadow: var(--shadow-card); }.pw-org-perfil-mini--oculto { display: none; }.pw-org-perfil__foto {width: 140px; height: 140px;border-radius: 50%;object-fit: cover;display: block;margin: 0 auto var(--sp-2);border: 2px solid var(--border-subtle);background: var(--bg-surface-2);}.pw-org-perfil__nombre {text-align: center;font-weight: var(--fw-semibold);color: var(--fg-1);}.pw-org-perfil__cargo {text-align: center;font-size: var(--fs-13);color: var(--fg-3);margin-bottom: var(--sp-3);}.pw-org-perfil__row {display: flex;justify-content: space-between;gap: var(--sp-2);font-size: var(--fs-13);padding: 3px 0;border-bottom: 1px dashed var(--border-subtle);}.pw-org-perfil__row:last-child { border-bottom: none; }.pw-org-perfil__label { color: var(--fg-3); white-space: nowrap; }.pw-org-perfil__valor { color: var(--fg-1); text-align: right; overflow-wrap: anywhere; }@media (max-width: 1100px) {.pw-org-layout { flex-direction: column-reverse; }.pw-org-perfil { position: static; flex: none; width: 100%; }.pw-org-perfil-mini { position: static; align-self: flex-end; }}.select2-container--default .select2-selection--multiple {min-height: 38px;border: 1px solid var(--border-default);border-radius: var(--r-md);background: var(--bg-surface);font-family: inherit;display: flex;flex-wrap: wrap;align-items: center;gap: 3px 4px;padding: 3px 8px;}.select2-container--default.select2-container--focus .select2-selection--multiple,.select2-container--default.select2-container--open .select2-selection--multiple {border-color: var(--border-focus);box-shadow: var(--ring-focus);}.select2-container--default .select2-selection--multiple .select2-selection__rendered {display: contents;}.select2-container--default .select2-selection--multiple .select2-selection__choice {display: inline-flex;max-width: 100%;align-items: center;gap: 4px;margin: 0;padding: 1px 6px 1px 8px;background: var(--pw-indigo-100);border: none;border-radius: var(--r-pill);color: var(--pw-indigo-700);font-size: var(--fs-13);font-weight: var(--fw-semibold);}.select2-container--default .select2-selection--multiple .select2-selection__choice__display {overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {order: 2;position: static;padding: 0 2px;line-height: 1;border: none;background: transparent;color: var(--pw-indigo-700);opacity: .65;}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {background: transparent;color: var(--pw-danger-500);opacity: 1;}.select2-container--default .select2-selection--multiple .select2-search--inline {flex: 1 1 40px;min-width: 40px;}.select2-container--default .select2-search--inline .select2-search__field {font-size: var(--fs-14);font-family: inherit;color: var(--fg-1);width: 100% !important;min-width: 40px;margin: 0;}.select2-container--default .select2-selection--multiple.select2-selection--clearable .select2-selection__clear {color: var(--fg-4);margin-right: 6px;}.select2-container--default .select2-dropdown {border: 1px solid var(--border-default);border-radius: var(--r-md);box-shadow: var(--shadow-card);overflow: hidden;}.select2-container--default .select2-results__option {font-size: var(--fs-14);color: var(--fg-1);padding: 8px 12px;}.select2-container--default .select2-results__option--highlighted[aria-selected] {background: var(--pw-indigo-500);color: #fff;}.select2-container--default .select2-results__option[aria-selected=true] {background: var(--pw-grey-100);color: var(--fg-3);}.select2-container--default .select2-search--dropdown .select2-search__field {border: 1px solid var(--border-default);border-radius: var(--r-sm);padding: 6px 10px;font-size: var(--fs-14);font-family: inherit;}.select2-container--default .select2-search--dropdown .select2-search__field:focus {outline: none;border-color: var(--border-focus);}.select2-container--default .select2-selection--multiple:has(select:disabled),.select2-container.select2-container--disabled .select2-selection--multiple {background: var(--bg-surface-2);color: var(--fg-4);}.pw-pagination {display: flex;flex-wrap: wrap;align-items: center;justify-content: center;gap: 0;}.step, .currentStep, .prevLink, .nextLink {display: inline-flex;align-items: center;justify-content: center;min-width: 32px;height: 32px;margin: 2px;padding: 0 var(--sp-2);border: 1px solid transparent;border-radius: var(--r-md);font-size: var(--fs-13);font-weight: var(--fw-semibold);color: var(--fg-2);text-decoration: none;transition: background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out);}a.step:hover {background: var(--pw-grey-100);color: var(--fg-1);}.currentStep {background: var(--pw-indigo-500);border-color: var(--pw-indigo-500);color: #fff;}.prevLink, .nextLink {padding: 0 var(--sp-3);border-color: var(--border-default);color: var(--pw-indigo-500);}.prevLink:hover, .nextLink:hover {background: var(--pw-indigo-100);border-color: var(--pw-indigo-500);}