:root{--soltel-primary: #252A50;--soltel-link: #2535A8;--soltel-secondary: #767587;--soltel-danger: #4f1d20;--soltel-success: #409738;--soltel-error: #E24C4C;--soltel-surface: #FFFFFF;--soltel-input-bg: #f8f9fa;--soltel-input-border: #ced4da;--soltel-font: "Century Gothic", "CenturyGothicRegular", sans-serif}body{font-family:var(--soltel-font);background:linear-gradient(135deg,#f3f5fb,#fff 60%);color:#1d1f2a}.card{background:var(--soltel-surface);border:1px solid #d7ddf3;border-radius:16px;padding:clamp(14px,3vw,22px);box-shadow:0 14px 30px #283a8a14}.hero-card{border-radius:28px;padding:clamp(20px,4vw,32px);display:flex;justify-content:space-between;align-items:flex-end;gap:18px;background:radial-gradient(circle at top right,rgba(37,53,168,.14),transparent 32%),linear-gradient(145deg,#fffffffa,#f2f6fff2);border:1px solid rgba(37,42,80,.08);box-shadow:0 18px 48px #1e2b5714}.hero-copy{min-width:0}.eyebrow{margin:0 0 8px;color:#6671a4;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero-card h1{margin:0;color:var(--soltel-primary);font-size:clamp(1.85rem,4vw,2.8rem);line-height:.98}.hero-text{margin:10px 0 0;color:#59638d;max-width:60ch}.hero-metric{min-width:180px;text-align:right}*{box-sizing:border-box}app-fichajes-page .day-notices{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}app-fichajes-page .day-notice{position:relative;overflow:hidden;border-radius:18px;border:1px solid #d5dbf2;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 16px 30px #26337014;padding:16px 18px 16px 22px}app-fichajes-page .day-notice:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-radius:18px 0 0 18px}app-fichajes-page .day-notice.holiday{border-color:#cddcff;background:radial-gradient(circle at top right,rgba(82,132,255,.14),transparent 42%),linear-gradient(180deg,#f7faff,#fff)}app-fichajes-page .day-notice.holiday:before{background:linear-gradient(180deg,#2757cc,#58a6ff)}app-fichajes-page .day-notice.weekend{border-color:#e8dcc0;background:radial-gradient(circle at top right,rgba(255,187,92,.12),transparent 42%),linear-gradient(180deg,#fffaf1,#fff)}app-fichajes-page .day-notice.weekend:before{background:linear-gradient(180deg,#c97a00,#f0b44a)}app-fichajes-page .day-notice h2{margin:0;color:var(--soltel-primary);font-size:1.02rem;line-height:1.2}app-fichajes-page .day-notice p{margin:8px 0 0;color:#4f5d92}app-fichajes-page .day-notice-eyebrow{margin:0 0 6px;color:#5b648c;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}app-ficha-page{display:block}app-ficha-page .profile-hub{max-width:980px;margin:0 auto;display:grid;gap:14px}app-ficha-page .profile-card,app-ficha-page .dashboard-card,app-ficha-page .state-card{border-radius:20px;border:1px solid #d5dbf2;background:#fff;box-shadow:0 16px 30px #26337014;padding:clamp(16px,2.8vw,24px)}app-ficha-page .profile-card{background:radial-gradient(circle at right top,rgba(66,104,240,.12),transparent 42%),linear-gradient(120deg,#f7f9ff,#fff 40% 100%)}app-ficha-page .profile-head{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:16px}app-ficha-page .avatar{width:58px;height:58px;border-radius:16px;background:linear-gradient(140deg,#2535a8,#2e74d7);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;letter-spacing:.04em}app-ficha-page h1{margin:0;color:var(--soltel-primary);font-size:clamp(1.35rem,3vw,2rem);line-height:1.1}app-ficha-page h2{margin:0;color:var(--soltel-primary);font-size:clamp(1.2rem,2.4vw,1.6rem);line-height:1.1}app-ficha-page h3{margin:0;color:var(--soltel-primary);font-size:1.05rem}app-ficha-page .eyebrow{margin:0 0 5px;color:#40508f;letter-spacing:.08em;text-transform:uppercase;font-weight:700;font-size:.74rem}app-ficha-page .subtitle{margin:8px 0 0;color:#4f5d92;max-width:62ch}app-ficha-page .profile-grid{margin:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}app-ficha-page .profile-grid div{display:grid;gap:4px;padding:12px;border-radius:12px;background:#eff3ff}app-ficha-page dt{color:#5b648c;font-size:.9rem;font-weight:700}app-ficha-page dd{margin:0;color:#1f2648;font-weight:700;word-break:break-word}app-ficha-page .dashboard-card{background:linear-gradient(180deg,#fff,#f9fbff),repeating-linear-gradient(120deg,rgba(126,148,248,.08) 0,rgba(126,148,248,.08) 4px,transparent 4px,transparent 14px)}app-ficha-page .dashboard-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:end;margin-bottom:14px}app-ficha-page .timestamp{margin:0;color:#5d688f;font-size:.86rem;font-weight:700}app-ficha-page .error-box{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#fff1f1;color:#aa2f2f;border:1px solid #f5c3c3;font-weight:700}app-ficha-page .kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:14px}app-ficha-page .kpi-card{border-radius:14px;border:1px solid #d4ddf8;background:#fff;padding:12px;box-shadow:inset 0 0 0 1px #2535a80a}app-ficha-page .kpi-label{margin:0 0 6px;color:#51619a;font-size:.84rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700}app-ficha-page .kpi-value{margin:0;color:#1f2648;font-size:clamp(1.15rem,2.6vw,1.45rem);font-weight:700}app-ficha-page .kpi-range{margin:6px 0 0;color:#5d688f;font-size:.84rem;font-weight:700}app-ficha-page .chart-section{margin-top:20px;padding-top:14px;border-top:1px solid #e3e9f3}app-ficha-page .chart-header{margin-bottom:12px}app-ficha-page .chart-header h3{margin:0;font-size:1.05rem;color:var(--soltel-primary)}app-ficha-page .chart-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}app-ficha-page .chart-tabs{display:flex;gap:8px}app-ficha-page .chart-tab{padding:8px 16px;border:1px solid #d4ddf8;border-radius:8px;background:#fff;color:#5b648c;font-weight:700;font-size:.86rem;cursor:pointer;transition:all .2s ease}app-ficha-page .chart-tab:hover{border-color:#a5b8e8;background:#f0f5ff}app-ficha-page .chart-tab.active{background:var(--soltel-primary);color:#fff;border-color:var(--soltel-primary)}app-ficha-page .chart-nav{display:flex;align-items:center;gap:8px;margin-left:auto}app-ficha-page .chart-nav-btn{width:30px;height:30px;border:1px solid #d4ddf8;border-radius:8px;background:#fff;color:#2535a8;font-size:1.2rem;font-weight:700;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .18s ease}app-ficha-page .chart-nav-btn:hover:not(:disabled){background:#f0f5ff;border-color:#a5b8e8}app-ficha-page .chart-nav-btn:disabled{opacity:.35;cursor:not-allowed}app-ficha-page .chart-nav-label{color:#314079;font-weight:700;font-size:.9rem;min-width:100px;text-align:center}app-ficha-page .chart-loading{height:240px;display:flex;align-items:center;justify-content:center;color:#5b648c;font-weight:700;font-size:.9rem}app-ficha-page .chart-container{height:240px;position:relative}app-ficha-page .chart-block{display:grid;gap:10px}app-ficha-page .bar-row{display:grid;gap:6px}app-ficha-page .bar-header{display:flex;justify-content:space-between;gap:8px;color:#314079;font-size:.9rem;font-weight:700}app-ficha-page .bar-track{height:12px;width:100%;border-radius:999px;background:#dbe3fb;overflow:hidden}app-ficha-page .bar-fill{height:100%;min-width:4px;border-radius:999px;background:linear-gradient(90deg,#2b5ecc,#20a7da);transition:width .26s ease}app-ficha-page .state-card{display:grid;gap:6px}app-ficha-page .state-card h1{font-size:1.16rem}app-ficha-page .state-card p{margin:0;color:#566089}app-ficha-page .state-card.soft{background:#f7faff}app-ficha-page .state-card.warning{border-color:#f1d6a8;background:#fff8ea}app-ficha-page .profile-actions{margin-left:12px;display:flex;align-items:center}app-ficha-page .profile-actions .action-button{border:0;border-radius:14px;min-height:40px;padding:0 14px;font:inherit;font-weight:700;cursor:pointer;background:var(--soltel-primary);color:#fff;transition:transform .16s ease,box-shadow .16s ease}app-ficha-page .profile-actions .action-button:hover{transform:translateY(-1px)}app-ficha-page .drawer-backdrop{position:fixed;inset:0;border:0;background:#0c143466;opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:45}app-ficha-page .drawer-backdrop.open{opacity:1;pointer-events:auto}app-ficha-page .change-password-drawer{position:fixed;top:0;right:0;width:min(420px,92vw);height:100dvh;background:#fff;border-left:1px solid #d7ddf3;box-shadow:-12px 0 30px #1e2f7133;padding:20px 18px;transform:translate(105%);transition:transform .22s ease;z-index:50;display:grid;align-content:start;gap:12px;overflow:auto}app-ficha-page .change-password-drawer.open{transform:translate(0)}@media(max-width:720px){app-ficha-page .profile-head{flex-direction:column;align-items:flex-start;gap:12px}app-ficha-page .avatar{width:48px;height:48px;border-radius:12px;font-size:1rem}app-ficha-page .subtitle{max-width:100%}app-ficha-page .profile-actions{width:100%;display:flex;justify-content:flex-end}app-ficha-page .profile-actions .action-button{min-width:140px}app-ficha-page .profile-grid{grid-template-columns:1fr}app-ficha-page .kpi-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}app-ficha-page .chart-toolbar{gap:8px}app-ficha-page .chart-nav-label{min-width:0}app-ficha-page .chart-container{height:200px}app-ficha-page .change-password-drawer{width:100vw}}html,body{margin:0;min-height:100%}body{font-family:var(--soltel-font)}app-user-management-page .departments-page,app-department-management-page .departments-page,app-festivos-management-page .departments-page,app-tipos-jornada-management-page .departments-page{max-width:1220px;margin:0 auto;display:grid;gap:24px;min-width:0}app-user-management-page .tipos-jornada-page,app-department-management-page .tipos-jornada-page,app-festivos-management-page .tipos-jornada-page,app-tipos-jornada-management-page .tipos-jornada-page{max-width:1280px;margin:0 auto;display:grid;gap:24px;min-width:0}app-user-management-page .users-page,app-department-management-page .users-page,app-festivos-management-page .users-page,app-tipos-jornada-management-page .users-page{max-width:1220px;margin:0 auto;display:grid;gap:18px;min-width:0}app-user-management-page .hero-card,app-user-management-page .workspace-card,app-user-management-page .stat-card,app-user-management-page .drawer,app-user-management-page .dialog-card,app-department-management-page .hero-card,app-department-management-page .workspace-card,app-department-management-page .stat-card,app-department-management-page .drawer,app-department-management-page .dialog-card,app-festivos-management-page .hero-card,app-festivos-management-page .workspace-card,app-festivos-management-page .stat-card,app-festivos-management-page .drawer,app-festivos-management-page .dialog-card,app-tipos-jornada-management-page .hero-card,app-tipos-jornada-management-page .workspace-card,app-tipos-jornada-management-page .stat-card,app-tipos-jornada-management-page .drawer,app-tipos-jornada-management-page .dialog-card{background:#fffffff0;border:1px solid rgba(37,42,80,.08);box-shadow:0 18px 48px #1e2b5714}app-user-management-page .hero-card,app-department-management-page .hero-card,app-festivos-management-page .hero-card,app-tipos-jornada-management-page .hero-card{border-radius:28px;padding:clamp(20px,4vw,32px);display:flex;justify-content:space-between;align-items:flex-start;gap:18px;background:radial-gradient(circle at top right,rgba(37,53,168,.14),transparent 32%),linear-gradient(145deg,#fffffffa,#f2f6fff2)}app-user-management-page .eyebrow,app-department-management-page .eyebrow,app-festivos-management-page .eyebrow,app-tipos-jornada-management-page .eyebrow{margin:0 0 8px;color:#6671a4;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}app-user-management-page h1,app-user-management-page h2,app-department-management-page h1,app-department-management-page h2,app-festivos-management-page h1,app-festivos-management-page h2,app-tipos-jornada-management-page h1,app-tipos-jornada-management-page h2{margin:0;color:var(--soltel-primary);text-wrap:balance}app-user-management-page h1,app-department-management-page h1,app-festivos-management-page h1,app-tipos-jornada-management-page h1{font-size:clamp(1.85rem,4vw,2.8rem);line-height:.98}app-user-management-page .hero-text,app-user-management-page .table-headline p,app-user-management-page .drawer-header p,app-user-management-page .dialog-card p:last-of-type,app-department-management-page .hero-text,app-department-management-page .table-headline p,app-department-management-page .drawer-header p,app-department-management-page .dialog-card p:last-of-type,app-festivos-management-page .hero-text,app-festivos-management-page .table-headline p,app-festivos-management-page .drawer-header p,app-festivos-management-page .dialog-card p:last-of-type,app-tipos-jornada-management-page .hero-text,app-tipos-jornada-management-page .table-headline p,app-tipos-jornada-management-page .drawer-header p,app-tipos-jornada-management-page .dialog-card p:last-of-type{margin:10px 0 0;color:#59638d;max-width:60ch}app-user-management-page .stats-grid,app-department-management-page .stats-grid,app-festivos-management-page .stats-grid,app-tipos-jornada-management-page .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}app-user-management-page .stat-card,app-department-management-page .stat-card,app-festivos-management-page .stat-card,app-tipos-jornada-management-page .stat-card{border-radius:22px;padding:18px;display:grid;gap:6px}app-user-management-page .stat-card span,app-user-management-page .stat-card small,app-department-management-page .stat-card span,app-department-management-page .stat-card small,app-festivos-management-page .stat-card span,app-festivos-management-page .stat-card small,app-tipos-jornada-management-page .stat-card span,app-tipos-jornada-management-page .stat-card small{color:#69739f;font-weight:700}app-user-management-page .stat-card strong,app-department-management-page .stat-card strong,app-festivos-management-page .stat-card strong,app-tipos-jornada-management-page .stat-card strong{color:var(--soltel-primary);font-size:clamp(1.55rem,3vw,2.25rem);line-height:1;font-variant-numeric:tabular-nums}app-user-management-page .stat-card.active,app-department-management-page .stat-card.active,app-festivos-management-page .stat-card.active,app-tipos-jornada-management-page .stat-card.active{background:linear-gradient(180deg,#f3faf2fa,#fffffff0)}app-user-management-page .stat-card.paused,app-department-management-page .stat-card.paused,app-festivos-management-page .stat-card.paused,app-tipos-jornada-management-page .stat-card.paused{background:linear-gradient(180deg,#fff7eafa,#fffffff0)}app-user-management-page .stat-card.admin,app-department-management-page .stat-card.admin,app-festivos-management-page .stat-card.admin,app-tipos-jornada-management-page .stat-card.admin{background:linear-gradient(180deg,#eff3fffa,#fffffff0)}app-user-management-page .workspace-card,app-department-management-page .workspace-card,app-festivos-management-page .workspace-card,app-tipos-jornada-management-page .workspace-card{border-radius:28px;padding:18px;min-width:0}app-user-management-page .toolbar,app-department-management-page .toolbar,app-festivos-management-page .toolbar,app-tipos-jornada-management-page .toolbar{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(160px,1fr));gap:12px;margin-bottom:18px}app-user-management-page .search-block,app-user-management-page .filter-block,app-user-management-page .field,app-department-management-page .search-block,app-department-management-page .filter-block,app-department-management-page .field,app-festivos-management-page .search-block,app-festivos-management-page .filter-block,app-festivos-management-page .field,app-tipos-jornada-management-page .search-block,app-tipos-jornada-management-page .filter-block,app-tipos-jornada-management-page .field{display:grid;gap:6px}app-user-management-page .search-block span,app-user-management-page .filter-block span,app-user-management-page .field span,app-user-management-page .meta-card span,app-department-management-page .search-block span,app-department-management-page .filter-block span,app-department-management-page .field span,app-department-management-page .meta-card span,app-festivos-management-page .search-block span,app-festivos-management-page .filter-block span,app-festivos-management-page .field span,app-festivos-management-page .meta-card span,app-tipos-jornada-management-page .search-block span,app-tipos-jornada-management-page .filter-block span,app-tipos-jornada-management-page .field span,app-tipos-jornada-management-page .meta-card span{color:#6873a0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-user-management-page .search-block input,app-user-management-page .filter-block select,app-user-management-page .field input,app-user-management-page .field select,app-department-management-page .search-block input,app-department-management-page .filter-block select,app-department-management-page .field input,app-department-management-page .field select,app-festivos-management-page .search-block input,app-festivos-management-page .filter-block select,app-festivos-management-page .field input,app-festivos-management-page .field select,app-tipos-jornada-management-page .search-block input,app-tipos-jornada-management-page .filter-block select,app-tipos-jornada-management-page .field input,app-tipos-jornada-management-page .field select{width:100%;min-height:48px;border:1px solid #d5ddf4;border-radius:16px;background:#f8faff;color:#1d2748;padding:0 14px;font:inherit}app-user-management-page .table-card,app-department-management-page .table-card,app-festivos-management-page .table-card,app-tipos-jornada-management-page .table-card{border-radius:24px;border:1px solid #e7ecf8;overflow:hidden;background:linear-gradient(180deg,#fffffffa,#f9fbfffa)}app-user-management-page .table-headline,app-department-management-page .table-headline,app-festivos-management-page .table-headline,app-tipos-jornada-management-page .table-headline{padding:18px 20px 14px;border-bottom:1px solid #ebeffa;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}app-user-management-page .table-headline>div:first-child,app-department-management-page .table-headline>div:first-child,app-festivos-management-page .table-headline>div:first-child,app-tipos-jornada-management-page .table-headline>div:first-child{min-width:0}app-user-management-page .table-headline-actions,app-department-management-page .table-headline-actions,app-festivos-management-page .table-headline-actions,app-tipos-jornada-management-page .table-headline-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}app-user-management-page .table-scroll,app-department-management-page .table-scroll,app-festivos-management-page .table-scroll,app-tipos-jornada-management-page .table-scroll{overflow-x:auto}app-user-management-page .users-table,app-department-management-page .users-table,app-festivos-management-page .users-table,app-tipos-jornada-management-page .users-table{width:100%;border-collapse:collapse;min-width:880px}app-user-management-page .users-table th,app-user-management-page .users-table td,app-department-management-page .users-table th,app-department-management-page .users-table td,app-festivos-management-page .users-table th,app-festivos-management-page .users-table td,app-tipos-jornada-management-page .users-table th,app-tipos-jornada-management-page .users-table td{padding:16px 20px;border-bottom:1px solid #edf1fb;text-align:left;vertical-align:middle}app-user-management-page .users-table th,app-department-management-page .users-table th,app-festivos-management-page .users-table th,app-tipos-jornada-management-page .users-table th{color:#5b648e;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-user-management-page .users-table tbody tr:hover,app-department-management-page .users-table tbody tr:hover,app-festivos-management-page .users-table tbody tr:hover,app-tipos-jornada-management-page .users-table tbody tr:hover{background:#f5f8fff2}app-user-management-page .identity-cell,app-department-management-page .identity-cell,app-festivos-management-page .identity-cell,app-tipos-jornada-management-page .identity-cell{display:grid;gap:4px;min-width:0}app-user-management-page .identity-cell strong,app-department-management-page .identity-cell strong,app-festivos-management-page .identity-cell strong,app-tipos-jornada-management-page .identity-cell strong{color:#1d2748}app-user-management-page .identity-cell span,app-department-management-page .identity-cell span,app-festivos-management-page .identity-cell span,app-tipos-jornada-management-page .identity-cell span{color:#69729b;min-width:0;overflow:hidden;text-overflow:ellipsis}app-user-management-page .pill,app-department-management-page .pill,app-festivos-management-page .pill,app-tipos-jornada-management-page .pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}app-user-management-page .role-administrador,app-department-management-page .role-administrador,app-festivos-management-page .role-administrador,app-tipos-jornada-management-page .role-administrador{background:#eee8ff;color:#503cad}app-user-management-page .role-responsable,app-department-management-page .role-responsable,app-festivos-management-page .role-responsable,app-tipos-jornada-management-page .role-responsable{background:#e6f1ff;color:#2268ba}app-user-management-page .role-empleado,app-department-management-page .role-empleado,app-festivos-management-page .role-empleado,app-tipos-jornada-management-page .role-empleado{background:#edf8ec;color:#357d3f}app-user-management-page .state-activo,app-department-management-page .state-activo,app-festivos-management-page .state-activo,app-tipos-jornada-management-page .state-activo{background:#edf7ed;color:#31723d}app-user-management-page .state-inactivo,app-department-management-page .state-inactivo,app-festivos-management-page .state-inactivo,app-tipos-jornada-management-page .state-inactivo{background:#fff4df;color:#8c620a}app-user-management-page .state-baja,app-department-management-page .state-baja,app-festivos-management-page .state-baja,app-tipos-jornada-management-page .state-baja{background:#fff4df;color:#8c620a}app-user-management-page .uuid-cell,app-department-management-page .uuid-cell,app-festivos-management-page .uuid-cell,app-tipos-jornada-management-page .uuid-cell{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;word-break:break-all;color:#3f4a73}app-user-management-page .metric-cell,app-department-management-page .metric-cell,app-festivos-management-page .metric-cell,app-tipos-jornada-management-page .metric-cell{font-variant-numeric:tabular-nums;font-weight:700;color:#243055}app-user-management-page .date-cell,app-department-management-page .date-cell,app-festivos-management-page .date-cell,app-tipos-jornada-management-page .date-cell{white-space:nowrap;font-variant-numeric:tabular-nums}app-user-management-page .actions-header,app-user-management-page .actions-cell,app-department-management-page .actions-header,app-department-management-page .actions-cell,app-festivos-management-page .actions-header,app-festivos-management-page .actions-cell,app-tipos-jornada-management-page .actions-header,app-tipos-jornada-management-page .actions-cell{text-align:right}app-user-management-page .actions-cell,app-department-management-page .actions-cell,app-festivos-management-page .actions-cell,app-tipos-jornada-management-page .actions-cell{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}app-user-management-page .action-button,app-user-management-page .primary-button,app-user-management-page .secondary-button,app-user-management-page .danger-button,app-user-management-page .close-button,app-department-management-page .action-button,app-department-management-page .primary-button,app-department-management-page .secondary-button,app-department-management-page .danger-button,app-department-management-page .close-button,app-festivos-management-page .action-button,app-festivos-management-page .primary-button,app-festivos-management-page .secondary-button,app-festivos-management-page .danger-button,app-festivos-management-page .close-button,app-tipos-jornada-management-page .action-button,app-tipos-jornada-management-page .primary-button,app-tipos-jornada-management-page .secondary-button,app-tipos-jornada-management-page .danger-button,app-tipos-jornada-management-page .close-button{min-height:40px;border-radius:14px;padding:0 14px;border:1px solid transparent;font:inherit;font-weight:700;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}app-user-management-page .primary-button,app-department-management-page .primary-button,app-festivos-management-page .primary-button,app-tipos-jornada-management-page .primary-button{background:var(--soltel-primary);color:#fff;box-shadow:0 14px 28px #252a5033}app-user-management-page .secondary-button,app-user-management-page .close-button,app-department-management-page .secondary-button,app-department-management-page .close-button,app-festivos-management-page .secondary-button,app-festivos-management-page .close-button,app-tipos-jornada-management-page .secondary-button,app-tipos-jornada-management-page .close-button{background:#fff;color:var(--soltel-primary);border-color:#d7def3}app-user-management-page .danger-button,app-department-management-page .danger-button,app-festivos-management-page .danger-button,app-tipos-jornada-management-page .danger-button{background:#922838;color:#fff}app-user-management-page .action-button,app-department-management-page .action-button,app-festivos-management-page .action-button,app-tipos-jornada-management-page .action-button{min-height:36px;padding:0 12px;background:#eef3ff;color:var(--soltel-link);border-color:#dde6ff}app-user-management-page .action-button.warning,app-department-management-page .action-button.warning,app-festivos-management-page .action-button.warning,app-tipos-jornada-management-page .action-button.warning{background:#fff5e4;color:#8b5c0b;border-color:#ffe0aa}app-user-management-page .action-button.danger,app-department-management-page .action-button.danger,app-festivos-management-page .action-button.danger,app-tipos-jornada-management-page .action-button.danger{background:#fff0f2;color:#a32c41;border-color:#ffd0d8}app-user-management-page .action-button:hover:not(:disabled),app-user-management-page .primary-button:hover:not(:disabled),app-user-management-page .secondary-button:hover:not(:disabled),app-user-management-page .danger-button:hover:not(:disabled),app-user-management-page .close-button:hover:not(:disabled),app-department-management-page .action-button:hover:not(:disabled),app-department-management-page .primary-button:hover:not(:disabled),app-department-management-page .secondary-button:hover:not(:disabled),app-department-management-page .danger-button:hover:not(:disabled),app-department-management-page .close-button:hover:not(:disabled),app-festivos-management-page .action-button:hover:not(:disabled),app-festivos-management-page .primary-button:hover:not(:disabled),app-festivos-management-page .secondary-button:hover:not(:disabled),app-festivos-management-page .danger-button:hover:not(:disabled),app-festivos-management-page .close-button:hover:not(:disabled),app-tipos-jornada-management-page .action-button:hover:not(:disabled),app-tipos-jornada-management-page .primary-button:hover:not(:disabled),app-tipos-jornada-management-page .secondary-button:hover:not(:disabled),app-tipos-jornada-management-page .danger-button:hover:not(:disabled),app-tipos-jornada-management-page .close-button:hover:not(:disabled){transform:translateY(-1px)}app-user-management-page button:disabled,app-department-management-page button:disabled,app-festivos-management-page button:disabled,app-tipos-jornada-management-page button:disabled{opacity:.55;cursor:not-allowed}app-user-management-page .feedback,app-department-management-page .feedback,app-festivos-management-page .feedback,app-tipos-jornada-management-page .feedback{margin:0;border-radius:18px;padding:14px 16px;font-weight:700}app-user-management-page .feedback.error,app-department-management-page .feedback.error,app-festivos-management-page .feedback.error,app-tipos-jornada-management-page .feedback.error{background:#fff0f2;border:1px solid #ffd1d8;color:#a32c41}app-user-management-page .feedback.success,app-department-management-page .feedback.success,app-festivos-management-page .feedback.success,app-tipos-jornada-management-page .feedback.success{background:#edf8ec;border:1px solid #d0e9ca;color:#2f6f39}app-user-management-page .empty-state,app-department-management-page .empty-state,app-festivos-management-page .empty-state,app-tipos-jornada-management-page .empty-state{margin:0;padding:24px 20px;color:#707aa4}app-user-management-page .drawer-scrim,app-department-management-page .drawer-scrim,app-festivos-management-page .drawer-scrim,app-tipos-jornada-management-page .drawer-scrim{position:fixed;inset:0;border:0;background:#0e13282e;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:40}app-user-management-page .drawer-scrim.open,app-department-management-page .drawer-scrim.open,app-festivos-management-page .drawer-scrim.open,app-tipos-jornada-management-page .drawer-scrim.open{opacity:1;pointer-events:auto}app-user-management-page .drawer,app-department-management-page .drawer,app-festivos-management-page .drawer,app-tipos-jornada-management-page .drawer{position:fixed;top:0;right:0;width:min(460px,100vw);height:100vh;padding:24px;display:grid;grid-template-rows:auto 1fr;gap:18px;transform:translate(100%);transition:transform .24s ease;z-index:50;border-radius:28px 0 0 28px;overscroll-behavior:contain}app-user-management-page .drawer.open,app-department-management-page .drawer.open,app-festivos-management-page .drawer.open,app-tipos-jornada-management-page .drawer.open{transform:translate(0)}app-user-management-page .drawer-header,app-department-management-page .drawer-header,app-festivos-management-page .drawer-header,app-tipos-jornada-management-page .drawer-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}app-user-management-page .drawer-form,app-department-management-page .drawer-form,app-festivos-management-page .drawer-form,app-tipos-jornada-management-page .drawer-form{display:grid;gap:14px;align-content:start;overflow-y:auto;padding-right:4px}app-user-management-page .tipos-jornada-page .toolbar,app-department-management-page .tipos-jornada-page .toolbar,app-festivos-management-page .tipos-jornada-page .toolbar,app-tipos-jornada-management-page .tipos-jornada-page .toolbar{grid-template-columns:minmax(0,2fr) minmax(180px,260px)}app-user-management-page .tipos-jornada-page .days-grid,app-department-management-page .tipos-jornada-page .days-grid,app-festivos-management-page .tipos-jornada-page .days-grid,app-tipos-jornada-management-page .tipos-jornada-page .days-grid{display:grid;gap:14px}app-user-management-page .tipos-jornada-page .day-card,app-department-management-page .tipos-jornada-page .day-card,app-festivos-management-page .tipos-jornada-page .day-card,app-tipos-jornada-management-page .tipos-jornada-page .day-card{border-radius:20px;border:1px solid #e2e9fa;background:linear-gradient(180deg,#fffffffc,#f7fafff5),radial-gradient(circle at top right,rgba(57,92,201,.08),transparent 36%);padding:16px;display:grid;gap:14px}app-user-management-page .tipos-jornada-page .day-card-off,app-department-management-page .tipos-jornada-page .day-card-off,app-festivos-management-page .tipos-jornada-page .day-card-off,app-tipos-jornada-management-page .tipos-jornada-page .day-card-off{background:linear-gradient(180deg,#f9fafcf5,#f4f7fbf5);opacity:.9}app-user-management-page .tipos-jornada-page .day-card-head,app-department-management-page .tipos-jornada-page .day-card-head,app-festivos-management-page .tipos-jornada-page .day-card-head,app-tipos-jornada-management-page .tipos-jornada-page .day-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px}app-user-management-page .tipos-jornada-page .day-card-head>div:first-child,app-department-management-page .tipos-jornada-page .day-card-head>div:first-child,app-festivos-management-page .tipos-jornada-page .day-card-head>div:first-child,app-tipos-jornada-management-page .tipos-jornada-page .day-card-head>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}app-user-management-page .tipos-jornada-page .day-card-head strong,app-department-management-page .tipos-jornada-page .day-card-head strong,app-festivos-management-page .tipos-jornada-page .day-card-head strong,app-tipos-jornada-management-page .tipos-jornada-page .day-card-head strong{color:#243055;font-size:1rem}app-user-management-page .tipos-jornada-page .day-card-short,app-department-management-page .tipos-jornada-page .day-card-short,app-festivos-management-page .tipos-jornada-page .day-card-short,app-tipos-jornada-management-page .tipos-jornada-page .day-card-short{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;background:#eaf0ff;color:var(--soltel-primary);font-weight:800;letter-spacing:.04em;box-shadow:inset 0 0 0 1px #d6e0ff}app-user-management-page .tipos-jornada-page .toggle-field,app-department-management-page .tipos-jornada-page .toggle-field,app-festivos-management-page .tipos-jornada-page .toggle-field,app-tipos-jornada-management-page .tipos-jornada-page .toggle-field{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;background:#f5f7ff;border:1px solid #dfe6fb;color:#44507b;font-weight:700;white-space:nowrap}app-user-management-page .tipos-jornada-page .toggle-field input,app-department-management-page .tipos-jornada-page .toggle-field input,app-festivos-management-page .tipos-jornada-page .toggle-field input,app-tipos-jornada-management-page .tipos-jornada-page .toggle-field input{accent-color:var(--soltel-primary)}app-user-management-page .tipos-jornada-page .toggle-field span,app-department-management-page .tipos-jornada-page .toggle-field span,app-festivos-management-page .tipos-jornada-page .toggle-field span,app-tipos-jornada-management-page .tipos-jornada-page .toggle-field span{color:inherit;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}app-user-management-page .tipos-jornada-page .day-card-grid,app-department-management-page .tipos-jornada-page .day-card-grid,app-festivos-management-page .tipos-jornada-page .day-card-grid,app-tipos-jornada-management-page .tipos-jornada-page .day-card-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}app-user-management-page .tipos-jornada-page .compact-field,app-department-management-page .tipos-jornada-page .compact-field,app-festivos-management-page .tipos-jornada-page .compact-field,app-tipos-jornada-management-page .tipos-jornada-page .compact-field{margin:0}app-user-management-page .tipos-jornada-page .day-error,app-department-management-page .tipos-jornada-page .day-error,app-festivos-management-page .tipos-jornada-page .day-error,app-tipos-jornada-management-page .tipos-jornada-page .day-error{margin:0;padding:10px 12px;border-radius:14px;background:#fff1f3;border:1px solid #ffd3da;color:#a32c41;font-size:.9rem;font-weight:700}app-user-management-page .tipos-jornada-page .identity-cell small,app-department-management-page .tipos-jornada-page .identity-cell small,app-festivos-management-page .tipos-jornada-page .identity-cell small,app-tipos-jornada-management-page .tipos-jornada-page .identity-cell small{color:#69729b;word-break:break-all;font-size:.8rem}app-user-management-page .tipos-jornada-page .drawer,app-department-management-page .tipos-jornada-page .drawer,app-festivos-management-page .tipos-jornada-page .drawer,app-tipos-jornada-management-page .tipos-jornada-page .drawer{width:min(720px,100vw)}app-user-management-page .tipos-jornada-page .drawer-form,app-department-management-page .tipos-jornada-page .drawer-form,app-festivos-management-page .tipos-jornada-page .drawer-form,app-tipos-jornada-management-page .tipos-jornada-page .drawer-form{gap:16px}app-user-management-page .tipos-jornada-page .meta-card,app-department-management-page .tipos-jornada-page .meta-card,app-festivos-management-page .tipos-jornada-page .meta-card,app-tipos-jornada-management-page .tipos-jornada-page .meta-card{background:linear-gradient(180deg,#f5f7fffa,#fffffffa),radial-gradient(circle at top right,rgba(74,105,210,.08),transparent 40%)}app-user-management-page .meta-card,app-department-management-page .meta-card,app-festivos-management-page .meta-card,app-tipos-jornada-management-page .meta-card{border-radius:18px;background:#f5f7ff;padding:14px 16px;display:grid;gap:6px}app-user-management-page .meta-card strong,app-department-management-page .meta-card strong,app-festivos-management-page .meta-card strong,app-tipos-jornada-management-page .meta-card strong{color:#243055;word-break:break-word}app-user-management-page .drawer-actions,app-user-management-page .dialog-actions,app-department-management-page .drawer-actions,app-department-management-page .dialog-actions,app-festivos-management-page .drawer-actions,app-festivos-management-page .dialog-actions,app-tipos-jornada-management-page .drawer-actions,app-tipos-jornada-management-page .dialog-actions{display:flex;justify-content:flex-end;gap:10px}app-user-management-page .dialog-backdrop,app-department-management-page .dialog-backdrop,app-festivos-management-page .dialog-backdrop,app-tipos-jornada-management-page .dialog-backdrop{position:fixed;inset:0;padding:20px;background:#0e132857;display:flex;align-items:center;justify-content:center;z-index:60}app-user-management-page .dialog-card,app-department-management-page .dialog-card,app-festivos-management-page .dialog-card,app-tipos-jornada-management-page .dialog-card{width:min(460px,100%);border-radius:24px;padding:24px}app-user-management-page input:focus-visible,app-user-management-page select:focus-visible,app-department-management-page input:focus-visible,app-department-management-page select:focus-visible,app-festivos-management-page input:focus-visible,app-festivos-management-page select:focus-visible,app-tipos-jornada-management-page input:focus-visible,app-tipos-jornada-management-page select:focus-visible{outline:none;border-color:#93a7ea;box-shadow:inset 0 0 0 2px #2535a847;background:#fff}app-user-management-page button:focus-visible,app-department-management-page button:focus-visible,app-festivos-management-page button:focus-visible,app-tipos-jornada-management-page button:focus-visible{outline:3px solid rgba(37,53,168,.26);outline-offset:2px}@media(max-width:1060px){app-user-management-page .stats-grid,app-department-management-page .stats-grid,app-festivos-management-page .stats-grid,app-tipos-jornada-management-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}app-user-management-page .toolbar,app-department-management-page .toolbar,app-festivos-management-page .toolbar,app-tipos-jornada-management-page .toolbar{grid-template-columns:1fr 1fr}app-user-management-page .tipos-jornada-page .day-card-grid,app-department-management-page .tipos-jornada-page .day-card-grid,app-festivos-management-page .tipos-jornada-page .day-card-grid,app-tipos-jornada-management-page .tipos-jornada-page .day-card-grid{grid-template-columns:1fr}app-user-management-page .search-block,app-department-management-page .search-block,app-festivos-management-page .search-block,app-tipos-jornada-management-page .search-block{grid-column:1/-1}}@media(max-width:720px){app-user-management-page .hero-card,app-department-management-page .hero-card,app-festivos-management-page .hero-card,app-tipos-jornada-management-page .hero-card{flex-direction:column;align-items:flex-start}app-user-management-page .stats-grid,app-user-management-page .toolbar,app-department-management-page .stats-grid,app-department-management-page .toolbar,app-festivos-management-page .stats-grid,app-festivos-management-page .toolbar,app-tipos-jornada-management-page .stats-grid,app-tipos-jornada-management-page .toolbar{grid-template-columns:1fr}app-user-management-page .hero-card,app-user-management-page .workspace-card,app-department-management-page .hero-card,app-department-management-page .workspace-card,app-festivos-management-page .hero-card,app-festivos-management-page .workspace-card,app-tipos-jornada-management-page .hero-card,app-tipos-jornada-management-page .workspace-card{border-radius:22px}app-user-management-page .table-scroll,app-department-management-page .table-scroll,app-festivos-management-page .table-scroll,app-tipos-jornada-management-page .table-scroll{overflow:visible}app-user-management-page .users-table,app-department-management-page .users-table,app-festivos-management-page .users-table,app-tipos-jornada-management-page .users-table{min-width:0;border-collapse:separate}app-user-management-page .users-table thead,app-department-management-page .users-table thead,app-festivos-management-page .users-table thead,app-tipos-jornada-management-page .users-table thead{display:none}app-user-management-page .users-table tbody,app-department-management-page .users-table tbody,app-festivos-management-page .users-table tbody,app-tipos-jornada-management-page .users-table tbody{display:grid;gap:14px;padding:14px}app-user-management-page .users-table tbody tr,app-department-management-page .users-table tbody tr,app-festivos-management-page .users-table tbody tr,app-tipos-jornada-management-page .users-table tbody tr{display:grid;gap:10px;padding:16px;border:1px solid #e3e9f8;border-radius:20px;background:linear-gradient(180deg,#fffffffc,#f6f9fff5);box-shadow:0 10px 28px #1e2b5714}app-user-management-page .users-table td,app-department-management-page .users-table td,app-festivos-management-page .users-table td,app-tipos-jornada-management-page .users-table td{display:grid;grid-template-columns:minmax(108px,132px) minmax(0,1fr);gap:12px;align-items:start;padding:0;border:0}app-user-management-page .users-table td:before,app-department-management-page .users-table td:before,app-festivos-management-page .users-table td:before,app-tipos-jornada-management-page .users-table td:before{content:attr(data-label);color:#6873a0;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-user-management-page .users-table .date-cell,app-user-management-page .users-table .uuid-cell,app-department-management-page .users-table .date-cell,app-department-management-page .users-table .uuid-cell,app-festivos-management-page .users-table .date-cell,app-festivos-management-page .users-table .uuid-cell,app-tipos-jornada-management-page .users-table .date-cell,app-tipos-jornada-management-page .users-table .uuid-cell{white-space:normal;word-break:break-word}app-user-management-page .users-table .actions-cell,app-department-management-page .users-table .actions-cell,app-festivos-management-page .users-table .actions-cell,app-tipos-jornada-management-page .users-table .actions-cell{grid-template-columns:1fr;gap:10px;padding-top:10px;margin-top:4px;border-top:1px solid #ebeffa;justify-content:flex-start;text-align:left;width:100%}app-user-management-page .users-table .actions-cell:before,app-department-management-page .users-table .actions-cell:before,app-festivos-management-page .users-table .actions-cell:before,app-tipos-jornada-management-page .users-table .actions-cell:before{margin-bottom:2px}app-user-management-page .drawer,app-department-management-page .drawer,app-festivos-management-page .drawer,app-tipos-jornada-management-page .drawer{top:auto;bottom:0;width:100vw;height:min(86vh,760px);border-radius:24px 24px 0 0;transform:translateY(100%)}app-user-management-page .drawer.open,app-department-management-page .drawer.open,app-festivos-management-page .drawer.open,app-tipos-jornada-management-page .drawer.open{transform:translateY(0)}app-user-management-page .tipos-jornada-page .day-card-head,app-department-management-page .tipos-jornada-page .day-card-head,app-festivos-management-page .tipos-jornada-page .day-card-head,app-tipos-jornada-management-page .tipos-jornada-page .day-card-head{flex-direction:column;align-items:flex-start}app-user-management-page .tipos-jornada-page .toggle-field,app-department-management-page .tipos-jornada-page .toggle-field,app-festivos-management-page .tipos-jornada-page .toggle-field,app-tipos-jornada-management-page .tipos-jornada-page .toggle-field{width:100%;justify-content:space-between}}app-solicitudes-manuales-page .page,app-solicitudes-picajes-page .page{max-width:1220px;margin:0 auto;display:grid;gap:18px;min-width:0}app-solicitudes-manuales-page .hero-card,app-solicitudes-manuales-page .workspace-card,app-solicitudes-manuales-page .stat-card,app-solicitudes-manuales-page .table-card,app-solicitudes-manuales-page .drawer,app-solicitudes-manuales-page .detail-card,app-solicitudes-manuales-page .detail-section,app-solicitudes-manuales-page .feedback,app-solicitudes-picajes-page .hero-card,app-solicitudes-picajes-page .workspace-card,app-solicitudes-picajes-page .stat-card,app-solicitudes-picajes-page .table-card,app-solicitudes-picajes-page .drawer,app-solicitudes-picajes-page .detail-card,app-solicitudes-picajes-page .detail-section,app-solicitudes-picajes-page .feedback{background:#fffffff0;border:1px solid rgba(37,42,80,.08);box-shadow:0 18px 48px #1e2b5714}app-solicitudes-manuales-page .hero-card,app-solicitudes-picajes-page .hero-card{border-radius:28px;padding:clamp(20px,4vw,32px);display:flex;justify-content:space-between;align-items:flex-end;gap:18px;background:radial-gradient(circle at top right,rgba(37,53,168,.14),transparent 32%),linear-gradient(145deg,#fffffffa,#f2f6fff2)}app-solicitudes-manuales-page .hero-copy,app-solicitudes-picajes-page .hero-copy{min-width:0}app-solicitudes-manuales-page .hero-actions,app-solicitudes-picajes-page .hero-actions{display:grid;gap:12px;justify-items:end;min-width:180px}app-solicitudes-manuales-page .eyebrow,app-solicitudes-picajes-page .eyebrow{margin:0 0 8px;color:#6671a4;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}app-solicitudes-manuales-page h1,app-solicitudes-manuales-page h2,app-solicitudes-manuales-page h3,app-solicitudes-picajes-page h1,app-solicitudes-picajes-page h2,app-solicitudes-picajes-page h3{margin:0;color:var(--soltel-primary);text-wrap:balance}app-solicitudes-manuales-page h1,app-solicitudes-picajes-page h1{font-size:clamp(1.85rem,4vw,2.8rem);line-height:.98}app-solicitudes-manuales-page .hero-text,app-solicitudes-manuales-page .table-headline p,app-solicitudes-manuales-page .drawer-header p,app-solicitudes-manuales-page .detail-section p,app-solicitudes-manuales-page .info-list dd,app-solicitudes-manuales-page .empty-state,app-solicitudes-picajes-page .hero-text,app-solicitudes-picajes-page .table-headline p,app-solicitudes-picajes-page .drawer-header p,app-solicitudes-picajes-page .detail-section p,app-solicitudes-picajes-page .info-list dd,app-solicitudes-picajes-page .empty-state{margin:10px 0 0;color:#59638d;max-width:60ch}app-solicitudes-manuales-page .stats-grid,app-solicitudes-picajes-page .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}app-solicitudes-manuales-page .stat-card,app-solicitudes-picajes-page .stat-card{border-radius:22px;padding:18px;display:grid;gap:6px}app-solicitudes-manuales-page .stat-card span,app-solicitudes-manuales-page .stat-card small,app-solicitudes-manuales-page .search-block span,app-solicitudes-manuales-page .filter-block span,app-solicitudes-manuales-page .field span,app-solicitudes-manuales-page .detail-card span,app-solicitudes-manuales-page .detail-section h3,app-solicitudes-manuales-page .info-list dt,app-solicitudes-manuales-page .slot-row span,app-solicitudes-picajes-page .stat-card span,app-solicitudes-picajes-page .stat-card small,app-solicitudes-picajes-page .search-block span,app-solicitudes-picajes-page .filter-block span,app-solicitudes-picajes-page .field span,app-solicitudes-picajes-page .detail-card span,app-solicitudes-picajes-page .detail-section h3,app-solicitudes-picajes-page .info-list dt,app-solicitudes-picajes-page .slot-row span{color:#6873a0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-solicitudes-manuales-page .stat-card strong,app-solicitudes-picajes-page .stat-card strong{color:var(--soltel-primary);font-size:clamp(1.55rem,3vw,2.25rem);line-height:1;font-variant-numeric:tabular-nums}app-solicitudes-manuales-page .stat-card.total,app-solicitudes-picajes-page .stat-card.total{background:linear-gradient(180deg,#eff3fffa,#fffffff0)}app-solicitudes-manuales-page .stat-card.pending,app-solicitudes-picajes-page .stat-card.pending{background:linear-gradient(180deg,#fff7eafa,#fffffff0)}app-solicitudes-manuales-page .stat-card.approved,app-solicitudes-picajes-page .stat-card.approved{background:linear-gradient(180deg,#f3faf2fa,#fffffff0)}app-solicitudes-manuales-page .stat-card.rejected,app-solicitudes-picajes-page .stat-card.rejected{background:linear-gradient(180deg,#fff0f2fa,#fffffff0)}app-solicitudes-manuales-page .workspace-card,app-solicitudes-picajes-page .workspace-card{border-radius:28px;padding:18px;min-width:0}app-solicitudes-manuales-page .toolbar,app-solicitudes-picajes-page .toolbar{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(140px,1fr));gap:12px;margin-bottom:18px}app-solicitudes-manuales-page .search-block,app-solicitudes-manuales-page .filter-block,app-solicitudes-manuales-page .field,app-solicitudes-picajes-page .search-block,app-solicitudes-picajes-page .filter-block,app-solicitudes-picajes-page .field{display:grid;gap:6px}app-solicitudes-manuales-page .search-block input,app-solicitudes-manuales-page .filter-block input,app-solicitudes-manuales-page .filter-block select,app-solicitudes-manuales-page .field input,app-solicitudes-manuales-page .field textarea,app-solicitudes-picajes-page .search-block input,app-solicitudes-picajes-page .filter-block input,app-solicitudes-picajes-page .filter-block select,app-solicitudes-picajes-page .field input,app-solicitudes-picajes-page .field textarea{width:100%;min-height:48px;border:1px solid #d5ddf4;border-radius:16px;background:#f8faff;color:#1d2748;padding:0 14px;font:inherit}app-solicitudes-manuales-page .field textarea,app-solicitudes-picajes-page .field textarea{min-height:112px;padding:12px 14px;resize:vertical}app-solicitudes-manuales-page .table-card,app-solicitudes-picajes-page .table-card{border-radius:24px;border:1px solid #e7ecf8;overflow:hidden;background:linear-gradient(180deg,#fffffffa,#f9fbfffa)}app-solicitudes-manuales-page .table-headline,app-solicitudes-picajes-page .table-headline{padding:18px 20px 14px;border-bottom:1px solid #ebeffa;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}app-solicitudes-manuales-page .table-scroll,app-solicitudes-picajes-page .table-scroll{overflow-x:auto}app-solicitudes-manuales-page .requests-table,app-solicitudes-picajes-page .requests-table{width:100%;border-collapse:collapse;min-width:980px}app-solicitudes-manuales-page .requests-table th,app-solicitudes-manuales-page .requests-table td,app-solicitudes-picajes-page .requests-table th,app-solicitudes-picajes-page .requests-table td{padding:16px 20px;border-bottom:1px solid #edf1fb;text-align:left;vertical-align:middle}app-solicitudes-manuales-page .requests-table th,app-solicitudes-picajes-page .requests-table th{color:#5b648e;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-solicitudes-manuales-page .requests-table tbody tr:hover,app-solicitudes-picajes-page .requests-table tbody tr:hover{background:#f5f8fff2}app-solicitudes-manuales-page .date-cell,app-solicitudes-manuales-page .text-cell,app-solicitudes-picajes-page .date-cell,app-solicitudes-picajes-page .text-cell{white-space:nowrap;font-variant-numeric:tabular-nums}app-solicitudes-manuales-page .text-cell,app-solicitudes-picajes-page .text-cell{max-width:240px;overflow:hidden;text-overflow:ellipsis}app-solicitudes-manuales-page .acciones-cell,app-solicitudes-picajes-page .acciones-cell{display:flex;gap:8px;flex-wrap:wrap;align-items:center}app-solicitudes-manuales-page .pill,app-solicitudes-picajes-page .pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}app-solicitudes-manuales-page .state-pendiente,app-solicitudes-picajes-page .state-pendiente{background:#fff3cd;color:#856404}app-solicitudes-manuales-page .state-aprobada,app-solicitudes-picajes-page .state-aprobada{background:#d4edda;color:#155724}app-solicitudes-manuales-page .state-rechazada,app-solicitudes-picajes-page .state-rechazada{background:#f8d7da;color:var(--soltel-danger)}app-solicitudes-manuales-page .action-button,app-solicitudes-picajes-page .action-button{border:0;border-radius:14px;min-height:40px;padding:0 14px;font:inherit;font-weight:700;cursor:pointer;transition:transform .18s ease,filter .18s ease,background-color .18s ease;background:#2535a814;color:var(--soltel-primary);white-space:nowrap}app-solicitudes-manuales-page .action-button.primary,app-solicitudes-picajes-page .action-button.primary{background:var(--soltel-primary);color:#fff}app-solicitudes-manuales-page .action-button.neutral,app-solicitudes-picajes-page .action-button.neutral{background:#76758724;color:#4f556e}app-solicitudes-manuales-page .action-button.warning,app-solicitudes-picajes-page .action-button.warning{background:#f5a42729;color:#8a5a00}app-solicitudes-manuales-page .action-button.danger,app-solicitudes-picajes-page .action-button.danger{background:#4f1d201a;color:var(--soltel-danger)}app-solicitudes-manuales-page .action-button:hover:not(:disabled),app-solicitudes-picajes-page .action-button:hover:not(:disabled){transform:translateY(-1px)}app-solicitudes-manuales-page .feedback,app-solicitudes-picajes-page .feedback{margin:0;border-radius:18px;padding:14px 16px;font-size:.92rem}app-solicitudes-manuales-page .feedback.error,app-solicitudes-picajes-page .feedback.error{background:#fff0f2;color:var(--soltel-danger);border-color:#4f1d2029}app-solicitudes-manuales-page .feedback.success,app-solicitudes-picajes-page .feedback.success{background:#edf8ec;color:#2f6f29;border-color:#40973829}@media(max-width:760px){app-solicitudes-manuales-page .table-scroll,app-solicitudes-picajes-page .table-scroll{overflow:visible}app-solicitudes-manuales-page .requests-table,app-solicitudes-picajes-page .requests-table{min-width:0;border-collapse:separate}app-solicitudes-manuales-page .requests-table thead,app-solicitudes-picajes-page .requests-table thead{display:none}app-solicitudes-manuales-page .requests-table tbody,app-solicitudes-picajes-page .requests-table tbody{display:grid;gap:14px;padding:14px}app-solicitudes-manuales-page .requests-table tbody tr,app-solicitudes-picajes-page .requests-table tbody tr{display:grid;gap:10px;padding:16px;border:1px solid #e3e9f8;border-radius:20px;background:linear-gradient(180deg,#fffffffc,#f6f9fff5);box-shadow:0 10px 28px #1e2b5714}app-solicitudes-manuales-page .requests-table td,app-solicitudes-picajes-page .requests-table td{display:grid;grid-template-columns:minmax(108px,132px) minmax(0,1fr);gap:12px;align-items:start;padding:0;border:0}app-solicitudes-manuales-page .requests-table td:before,app-solicitudes-picajes-page .requests-table td:before{content:attr(data-label);color:#6873a0;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-solicitudes-manuales-page .requests-table .date-cell,app-solicitudes-manuales-page .requests-table .text-cell,app-solicitudes-manuales-page .requests-table .motivo-cell,app-solicitudes-picajes-page .requests-table .date-cell,app-solicitudes-picajes-page .requests-table .text-cell,app-solicitudes-picajes-page .requests-table .motivo-cell{white-space:normal;max-width:none}app-solicitudes-manuales-page .requests-table .acciones-cell,app-solicitudes-picajes-page .requests-table .acciones-cell{grid-template-columns:1fr;gap:10px;padding-top:10px;margin-top:4px;border-top:1px solid #ebeffa;width:100%;justify-content:flex-start}app-solicitudes-manuales-page .requests-table .acciones-cell:before,app-solicitudes-picajes-page .requests-table .acciones-cell:before{margin-bottom:2px}}app-solicitudes-manuales-page .empty-state,app-solicitudes-picajes-page .empty-state{padding:24px 20px;font-style:italic}app-solicitudes-manuales-page .drawer-scrim,app-solicitudes-picajes-page .drawer-scrim{position:fixed;inset:0;border:0;padding:0;background:#13182c47;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:29}app-solicitudes-manuales-page .drawer-scrim.open,app-solicitudes-picajes-page .drawer-scrim.open{opacity:1;pointer-events:auto}app-solicitudes-manuales-page .drawer,app-solicitudes-picajes-page .drawer{position:fixed;top:0;right:0;width:min(460px,100vw);height:100vh;background:#fffffffa;border-left:1px solid rgba(37,42,80,.08);box-shadow:-24px 0 60px #1e2b5724;transform:translate(100%);transition:transform .22s ease;z-index:30;display:grid;grid-template-rows:auto 1fr;overflow:hidden}app-solicitudes-manuales-page .drawer.open,app-solicitudes-picajes-page .drawer.open{transform:translate(0)}app-solicitudes-manuales-page .drawer-header,app-solicitudes-picajes-page .drawer-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:22px 22px 18px;border-bottom:1px solid #ebeffa;background:linear-gradient(180deg,#fffffffa,#f8fafffa)}app-solicitudes-manuales-page .drawer-header p,app-solicitudes-picajes-page .drawer-header p{margin:8px 0 0;color:#59638d}app-solicitudes-manuales-page .drawer-body,app-solicitudes-picajes-page .drawer-body{padding:18px 22px 22px;overflow:auto;display:grid;gap:16px}app-solicitudes-manuales-page .drawer-actions,app-solicitudes-picajes-page .drawer-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}app-solicitudes-manuales-page .drawer-actions .action-button,app-solicitudes-picajes-page .drawer-actions .action-button{width:auto;flex:0 0 auto;min-width:0;padding-inline:12px}app-solicitudes-manuales-page .detail-grid,app-solicitudes-picajes-page .detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}app-solicitudes-manuales-page .detail-card,app-solicitudes-manuales-page .detail-section,app-solicitudes-picajes-page .detail-card,app-solicitudes-picajes-page .detail-section{border:1px solid #e7ecf8;border-radius:18px;background:#fff;padding:14px}app-solicitudes-manuales-page .detail-card,app-solicitudes-picajes-page .detail-card{display:grid;gap:6px;min-width:0}app-solicitudes-manuales-page .detail-card strong,app-solicitudes-manuales-page .detail-section p,app-solicitudes-manuales-page .info-list dd,app-solicitudes-picajes-page .detail-card strong,app-solicitudes-picajes-page .detail-section p,app-solicitudes-picajes-page .info-list dd{margin:0;color:#1d2748;font-weight:700;word-break:break-word}app-solicitudes-manuales-page .detail-section,app-solicitudes-picajes-page .detail-section{display:grid;gap:10px}app-solicitudes-manuales-page .info-list,app-solicitudes-picajes-page .info-list{display:grid;gap:10px;margin:0}app-solicitudes-manuales-page .info-list div,app-solicitudes-picajes-page .info-list div{display:grid;gap:4px}app-solicitudes-manuales-page .info-list dt,app-solicitudes-picajes-page .info-list dt{font-size:.72rem}app-solicitudes-manuales-page .slot-row,app-solicitudes-picajes-page .slot-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}app-solicitudes-manuales-page .slot-row div,app-solicitudes-picajes-page .slot-row div{padding:12px;border-radius:16px;background:#f8faff;border:1px solid #dfe6f8;display:grid;gap:4px}@media(max-width:1120px){app-solicitudes-manuales-page .stats-grid,app-solicitudes-picajes-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}app-solicitudes-manuales-page .toolbar,app-solicitudes-picajes-page .toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){app-solicitudes-manuales-page .hero-card,app-solicitudes-manuales-page .table-headline,app-solicitudes-manuales-page .drawer-header,app-solicitudes-manuales-page .reject-panel-header,app-solicitudes-picajes-page .hero-card,app-solicitudes-picajes-page .table-headline,app-solicitudes-picajes-page .drawer-header,app-solicitudes-picajes-page .reject-panel-header{flex-direction:column;align-items:stretch}app-solicitudes-manuales-page .hero-actions,app-solicitudes-picajes-page .hero-actions{justify-items:stretch;min-width:0}app-solicitudes-manuales-page .stats-grid,app-solicitudes-manuales-page .toolbar,app-solicitudes-picajes-page .stats-grid,app-solicitudes-picajes-page .toolbar{grid-template-columns:1fr}app-solicitudes-manuales-page .workspace-card,app-solicitudes-manuales-page .table-card,app-solicitudes-picajes-page .workspace-card,app-solicitudes-picajes-page .table-card{border-radius:22px}app-solicitudes-manuales-page .acciones-cell,app-solicitudes-manuales-page .reject-actions,app-solicitudes-picajes-page .acciones-cell,app-solicitudes-picajes-page .reject-actions{width:100%}app-solicitudes-manuales-page .drawer-actions,app-solicitudes-picajes-page .drawer-actions{width:100%;justify-content:flex-end}app-solicitudes-manuales-page .drawer,app-solicitudes-picajes-page .drawer{width:100vw}app-solicitudes-manuales-page .detail-grid,app-solicitudes-manuales-page .slot-row,app-solicitudes-picajes-page .detail-grid,app-solicitudes-picajes-page .slot-row{grid-template-columns:1fr}}app-calendario-laboral-page .calendar-page,app-calendario-laboral-page .festivos-page,app-festivos-management-page .calendar-page,app-festivos-management-page .festivos-page{max-width:1240px;margin:0 auto;display:grid;gap:16px;min-width:0}app-calendario-laboral-page .hero-card,app-calendario-laboral-page .workspace-card,app-calendario-laboral-page .stat-card,app-calendario-laboral-page .drawer,app-festivos-management-page .hero-card,app-festivos-management-page .workspace-card,app-festivos-management-page .stat-card,app-festivos-management-page .drawer{background:#fffffff5;border:1px solid rgba(37,42,80,.08);box-shadow:0 18px 48px #1e2b5714}app-calendario-laboral-page .hero-card,app-festivos-management-page .hero-card{border-radius:28px;padding:clamp(20px,4vw,32px);display:flex;justify-content:space-between;align-items:flex-end;gap:18px;background:radial-gradient(circle at top right,rgba(37,53,168,.14),transparent 32%),linear-gradient(145deg,#fffffffa,#f2f6fff2)}app-calendario-laboral-page .hero-copy,app-festivos-management-page .hero-copy{min-width:0}app-calendario-laboral-page .hero-actions,app-festivos-management-page .hero-actions{display:grid;gap:10px;justify-items:end;min-width:240px}app-calendario-laboral-page .hero-copy,app-festivos-management-page .hero-copy{display:grid;gap:14px;min-width:0;flex:1}app-calendario-laboral-page .year-picker,app-festivos-management-page .year-picker{display:flex;align-items:end;gap:10px;width:100%}app-calendario-laboral-page .year-step,app-festivos-management-page .year-step{min-width:48px;padding-inline:0}app-calendario-laboral-page .year-field,app-festivos-management-page .year-field{min-width:160px;flex:1}app-calendario-laboral-page .hero-note,app-festivos-management-page .hero-note{display:none}app-calendario-laboral-page .eyebrow,app-festivos-management-page .eyebrow{margin:0 0 8px;color:#6671a4;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}app-calendario-laboral-page h1,app-calendario-laboral-page h2,app-calendario-laboral-page h3,app-festivos-management-page h1,app-festivos-management-page h2,app-festivos-management-page h3{margin:0;color:var(--soltel-primary);text-wrap:balance}app-calendario-laboral-page h1,app-festivos-management-page h1{font-size:clamp(1.85rem,4vw,2.8rem);line-height:.98}app-calendario-laboral-page .table-headline p,app-calendario-laboral-page .drawer-header p,app-calendario-laboral-page .detail-section p,app-calendario-laboral-page .empty-state,app-festivos-management-page .table-headline p,app-festivos-management-page .drawer-header p,app-festivos-management-page .detail-section p,app-festivos-management-page .empty-state{margin:10px 0 0;color:#59638d;max-width:60ch}app-calendario-laboral-page .field,app-festivos-management-page .field{display:grid;gap:6px}app-calendario-laboral-page .field span,app-festivos-management-page .field span{color:#6873a0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-calendario-laboral-page .field input,app-festivos-management-page .field input{width:100%;min-height:48px;border:1px solid #d5ddf4;border-radius:16px;background:#f8faff;color:#1d2748;padding:0 14px;font:inherit;font-weight:700}app-calendario-laboral-page .stats-grid,app-festivos-management-page .stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}app-calendario-laboral-page .stat-card,app-festivos-management-page .stat-card{border-radius:22px;padding:18px;display:grid;gap:6px}app-calendario-laboral-page .summary-card span,app-calendario-laboral-page .summary-card small,app-festivos-management-page .summary-card span,app-festivos-management-page .summary-card small{color:#69739f;font-weight:700}app-calendario-laboral-page .summary-card strong,app-festivos-management-page .summary-card strong{color:var(--soltel-primary);font-size:clamp(1.45rem,3vw,2.1rem);line-height:1;font-variant-numeric:tabular-nums}app-calendario-laboral-page .tone-blue,app-festivos-management-page .tone-blue{background:linear-gradient(180deg,#eff3fffa,#fffffff0)}app-calendario-laboral-page .tone-green,app-festivos-management-page .tone-green{background:linear-gradient(180deg,#f3faf2fa,#fffffff0)}app-calendario-laboral-page .tone-amber,app-festivos-management-page .tone-amber{background:linear-gradient(180deg,#fff7eafa,#fffffff0)}app-calendario-laboral-page .tone-violet,app-festivos-management-page .tone-violet{background:linear-gradient(180deg,#f4effffa,#fffffff0)}app-calendario-laboral-page .tone-teal,app-festivos-management-page .tone-teal{background:linear-gradient(180deg,#ecf9f9fa,#fffffff0)}app-calendario-laboral-page .workspace-card,app-festivos-management-page .workspace-card{border-radius:28px;padding:18px;min-width:0}app-calendario-laboral-page .table-headline,app-festivos-management-page .table-headline{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:18px}app-calendario-laboral-page .year-summary-chip,app-festivos-management-page .year-summary-chip{margin:0;color:#2535a8;background:#edf1ff;border:1px solid #d7def5;border-radius:999px;padding:10px 14px;font-size:.88rem;font-weight:700;white-space:nowrap}app-calendario-laboral-page .calendar-grid,app-festivos-management-page .calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}app-calendario-laboral-page .month-card,app-festivos-management-page .month-card{border-radius:20px;border:1px solid #e7ecf8;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:inset 0 0 0 1px #2535a808;padding:14px;display:grid;gap:12px}app-calendario-laboral-page .month-header,app-festivos-management-page .month-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}app-calendario-laboral-page .month-eyebrow,app-festivos-management-page .month-eyebrow{margin:0 0 4px;color:#6671a4;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}app-calendario-laboral-page .month-header h3,app-festivos-management-page .month-header h3{font-size:1.05rem}app-calendario-laboral-page .month-badge,app-festivos-management-page .month-badge{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border-radius:999px;background:#edf3ff;color:#3550b3;font-size:.76rem;font-weight:800;white-space:nowrap}app-calendario-laboral-page .month-weekdays,app-calendario-laboral-page .month-days,app-festivos-management-page .month-weekdays,app-festivos-management-page .month-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}app-calendario-laboral-page .month-weekdays span,app-festivos-management-page .month-weekdays span{color:#6873a0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;text-align:center}app-calendario-laboral-page .day-cell,app-festivos-management-page .day-cell{position:relative;min-height:38px;border-radius:11px;border:1px solid #e0e6f6;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#25305c;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}app-calendario-laboral-page button.day-cell,app-festivos-management-page button.day-cell{width:100%;cursor:pointer;font:inherit}app-calendario-laboral-page .day-cell.outside,app-festivos-management-page .day-cell.outside{opacity:.22;background:#f7f9ff;border-style:dashed}app-calendario-laboral-page .day-cell.weekend:not(.festive),app-festivos-management-page .day-cell.weekend:not(.festive){background:#f7f9ff;color:#51619a}app-calendario-laboral-page .day-cell.today,app-festivos-management-page .day-cell.today{border-color:#8aa3ff;box-shadow:0 0 0 2px #2535a814}app-calendario-laboral-page .day-cell.festive,app-festivos-management-page .day-cell.festive{background:linear-gradient(180deg,#fff1ec,#ffd8cf);border-color:#ff9f87;color:#b33d1f;box-shadow:inset 0 0 0 1px #174ea614}app-calendario-laboral-page .day-cell.festive:hover,app-calendario-laboral-page .day-cell.festive:focus-visible,app-festivos-management-page .day-cell.festive:hover,app-festivos-management-page .day-cell.festive:focus-visible{transform:translateY(-1px);box-shadow:0 10px 18px #b33d1f24}app-calendario-laboral-page .day-number,app-festivos-management-page .day-number{position:relative;z-index:1}app-calendario-laboral-page .sr-only,app-festivos-management-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}app-calendario-laboral-page .action-button,app-calendario-laboral-page .primary-button,app-calendario-laboral-page .secondary-button,app-calendario-laboral-page .danger-button,app-calendario-laboral-page .close-button,app-festivos-management-page .action-button,app-festivos-management-page .primary-button,app-festivos-management-page .secondary-button,app-festivos-management-page .danger-button,app-festivos-management-page .close-button{min-height:40px;border-radius:14px;padding:0 14px;border:1px solid transparent;font:inherit;font-weight:700;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}app-calendario-laboral-page .action-button.neutral,app-calendario-laboral-page .secondary-button,app-calendario-laboral-page .close-button,app-festivos-management-page .action-button.neutral,app-festivos-management-page .secondary-button,app-festivos-management-page .close-button{background:#fff;color:var(--soltel-primary);border-color:#d7def3}app-calendario-laboral-page .action-button:hover:not(:disabled),app-calendario-laboral-page .primary-button:hover:not(:disabled),app-calendario-laboral-page .secondary-button:hover:not(:disabled),app-calendario-laboral-page .danger-button:hover:not(:disabled),app-calendario-laboral-page .close-button:hover:not(:disabled),app-festivos-management-page .action-button:hover:not(:disabled),app-festivos-management-page .primary-button:hover:not(:disabled),app-festivos-management-page .secondary-button:hover:not(:disabled),app-festivos-management-page .danger-button:hover:not(:disabled),app-festivos-management-page .close-button:hover:not(:disabled){transform:translateY(-1px)}app-calendario-laboral-page button:disabled,app-festivos-management-page button:disabled{opacity:.55;cursor:not-allowed}app-calendario-laboral-page .feedback,app-festivos-management-page .feedback{margin:0;border-radius:18px;padding:14px 16px;font-weight:700}app-calendario-laboral-page .feedback.error,app-festivos-management-page .feedback.error{background:#fff0f2;border:1px solid #ffd1d8;color:#a32c41}app-calendario-laboral-page .feedback.loading,app-festivos-management-page .feedback.loading{background:#edf3ff;border:1px solid #d7def5;color:#3550b3}app-calendario-laboral-page .hero-buttons,app-festivos-management-page .hero-buttons{display:grid;gap:10px;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}app-calendario-laboral-page .toolbar,app-festivos-management-page .toolbar{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr);gap:12px;margin-bottom:18px;align-items:end}app-calendario-laboral-page .toolbar-actions,app-festivos-management-page .toolbar-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}app-calendario-laboral-page .toolbar-chip,app-festivos-management-page .toolbar-chip{margin:0;min-height:48px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:#edf3ff;border:1px solid #d7def5;color:#3550b3;font-weight:800;white-space:nowrap}app-calendario-laboral-page .toolbar-chip.subtle,app-festivos-management-page .toolbar-chip.subtle{background:#f5f7ff;color:#5b648e;border-color:#e4e9f7}app-calendario-laboral-page .import-summary,app-festivos-management-page .import-summary{display:grid;gap:14px;margin:0}app-calendario-laboral-page .import-summary-head,app-festivos-management-page .import-summary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}app-calendario-laboral-page .import-summary-actions,app-festivos-management-page .import-summary-actions{display:inline-flex;align-items:center;gap:10px}app-calendario-laboral-page .import-summary-close,app-festivos-management-page .import-summary-close{width:36px;height:36px;border-radius:999px;border:1px solid #d7def5;background:#fff;color:var(--soltel-primary);font:inherit;font-size:1.15rem;line-height:1;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}app-calendario-laboral-page .import-summary-close:hover:not(:disabled),app-festivos-management-page .import-summary-close:hover:not(:disabled){transform:translateY(-1px);background:#edf3ff;border-color:#c7d3f5}app-calendario-laboral-page .import-summary-grid,app-festivos-management-page .import-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}app-calendario-laboral-page .import-summary-card,app-festivos-management-page .import-summary-card{border-radius:18px;padding:14px 16px;background:#f7f9ff;border:1px solid #e1e8f9;display:grid;gap:4px}app-calendario-laboral-page .import-summary-card span,app-festivos-management-page .import-summary-card span{color:#6873a0;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-calendario-laboral-page .import-summary-card strong,app-festivos-management-page .import-summary-card strong{color:var(--soltel-primary);font-size:1.3rem;line-height:1}app-calendario-laboral-page .import-summary-messages,app-festivos-management-page .import-summary-messages{margin:0;padding-left:18px;color:#59638d;display:grid;gap:6px}app-calendario-laboral-page .drawer-scrim,app-festivos-management-page .drawer-scrim{position:fixed;inset:0;border:0;background:#0e13282e;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:40}app-calendario-laboral-page .drawer-scrim.open,app-festivos-management-page .drawer-scrim.open{opacity:1;pointer-events:auto}app-calendario-laboral-page .drawer,app-festivos-management-page .drawer{position:fixed;top:0;right:0;width:min(460px,100vw);height:100vh;padding:24px;display:grid;grid-template-rows:auto 1fr;gap:18px;transform:translate(100%);transition:transform .24s ease;z-index:50;border-radius:28px 0 0 28px;overscroll-behavior:contain}app-calendario-laboral-page .drawer.open,app-festivos-management-page .drawer.open{transform:translate(0)}@media(max-width:1060px){app-calendario-laboral-page .hero-card,app-festivos-management-page .hero-card{align-items:stretch}app-calendario-laboral-page .hero-actions,app-festivos-management-page .hero-actions{min-width:0;width:100%}app-calendario-laboral-page .toolbar,app-festivos-management-page .toolbar{grid-template-columns:1fr}app-calendario-laboral-page .toolbar-actions,app-festivos-management-page .toolbar-actions{justify-content:flex-start}app-calendario-laboral-page .import-summary-grid,app-festivos-management-page .import-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){app-calendario-laboral-page .hero-card,app-festivos-management-page .hero-card{flex-direction:column}app-calendario-laboral-page .hero-actions,app-festivos-management-page .hero-actions{justify-items:stretch;width:100%}app-calendario-laboral-page .year-picker,app-festivos-management-page .year-picker{flex-wrap:wrap}app-calendario-laboral-page .year-field,app-festivos-management-page .year-field{min-width:0}app-calendario-laboral-page .hero-buttons,app-festivos-management-page .hero-buttons{grid-template-columns:1fr}app-calendario-laboral-page .import-summary-grid,app-festivos-management-page .import-summary-grid{grid-template-columns:1fr}app-calendario-laboral-page .toolbar-actions,app-festivos-management-page .toolbar-actions{width:100%}app-calendario-laboral-page .toolbar-chip,app-festivos-management-page .toolbar-chip{width:100%}}app-calendario-laboral-page .drawer-header,app-festivos-management-page .drawer-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}app-calendario-laboral-page .drawer-body,app-festivos-management-page .drawer-body{display:grid;gap:16px;align-content:start;overflow-y:auto;padding-right:4px}app-calendario-laboral-page .detail-grid,app-festivos-management-page .detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}app-calendario-laboral-page .detail-card,app-calendario-laboral-page .detail-section,app-festivos-management-page .detail-card,app-festivos-management-page .detail-section{border-radius:18px;background:#f5f7ff;padding:14px 16px;display:grid;gap:6px}app-calendario-laboral-page .detail-card span,app-calendario-laboral-page .detail-section h3,app-festivos-management-page .detail-card span,app-festivos-management-page .detail-section h3{color:#6873a0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-calendario-laboral-page .detail-card strong,app-calendario-laboral-page .detail-section p,app-festivos-management-page .detail-card strong,app-festivos-management-page .detail-section p{color:#243055;margin:0}app-calendario-laboral-page .empty-state,app-festivos-management-page .empty-state{margin:0;padding:12px 0 0;color:#59638d}@media(max-width:1120px){app-calendario-laboral-page .stats-grid,app-festivos-management-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){app-calendario-laboral-page .hero-card,app-festivos-management-page .hero-card{flex-direction:column;align-items:flex-start}app-calendario-laboral-page .hero-actions,app-festivos-management-page .hero-actions{justify-items:stretch;width:100%}app-calendario-laboral-page .table-headline,app-calendario-laboral-page .drawer-header,app-festivos-management-page .table-headline,app-festivos-management-page .drawer-header{flex-direction:column;align-items:stretch}app-calendario-laboral-page .stats-grid,app-calendario-laboral-page .calendar-grid,app-festivos-management-page .stats-grid,app-festivos-management-page .calendar-grid{grid-template-columns:1fr}app-calendario-laboral-page .workspace-card,app-calendario-laboral-page .table-card,app-festivos-management-page .workspace-card,app-festivos-management-page .table-card{border-radius:22px}app-calendario-laboral-page .drawer,app-festivos-management-page .drawer{top:auto;bottom:0;width:100vw;height:min(86vh,760px);border-radius:24px 24px 0 0;transform:translateY(100%)}app-calendario-laboral-page .drawer.open,app-festivos-management-page .drawer.open{transform:translateY(0)}app-calendario-laboral-page .detail-grid,app-festivos-management-page .detail-grid{grid-template-columns:1fr}}
