@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,300..900;1,14..32,300..900&display=swap";:root{--clr-brand-dark:#004f46;--clr-brand-green:#437742;--clr-brand-olive:#d6b43e;--clr-brand-cream:#fdbf68;--clr-accent:#a35f00;--clr-brand-cream-hover:#fcd34d;--clr-brand-cream-dim:#fdbf6826;--clr-brand-green-hover:#376335;--clr-slate-50:#f8fafc;--clr-slate-100:#f1f5f9;--clr-slate-200:#e2e8f0;--clr-slate-300:#cbd5e1;--clr-slate-400:#94a3b8;--clr-slate-500:#64748b;--clr-slate-600:#475569;--clr-slate-700:#334155;--clr-slate-800:#1e293b;--clr-slate-900:#0f172a;--clr-bg:var(--clr-slate-50);--clr-bg-card:#fff;--clr-bg-card-hover:var(--clr-slate-100);--clr-border:var(--clr-slate-200);--clr-border-hover:var(--clr-slate-300);--clr-text-primary:var(--clr-slate-900);--clr-text-secondary:var(--clr-slate-700);--clr-text-muted:var(--clr-slate-600);--clr-sidebar-bg:#003b34;--clr-sidebar-border:#ffffff1a;--clr-sidebar-text:#ffffffb3;--clr-sidebar-active-bg:#5ba25a;--clr-sidebar-active-text:#fff;--clr-primary-500:var(--clr-brand-cream);--clr-primary-600:var(--clr-brand-cream-hover);--clr-overdue:#c61111;--clr-critical:#aa4804;--clr-warning:#7a651a;--clr-success:#0a7753;--clr-info:#975902;--clr-overdue-bg:#ef444426;--clr-critical-bg:#f9731626;--clr-warning-bg:#d6b43e26;--clr-success-bg:#10b98126;--clr-info-bg:#fdbf6826;--sidebar-width:248px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--font-family:"Inter", "Inter Variable", system-ui, -apple-system, sans-serif;--font-xs:.75rem;--font-sm:.875rem;--font-md:1rem;--font-lg:1.125rem;--font-xl:1.375rem;--font-2xl:1.75rem;--font-3xl:2rem;--alto-nav:calc(53px + env(safe-area-inset-bottom));--shadow-sm:0 1px 2px #0f172a0f;--shadow-card:0 1px 3px #0f172a14, 0 1px 2px #0f172a0d;--shadow-md:0 4px 6px -1px #0f172a14, 0 2px 4px -2px #0f172a0d;--shadow-lg:0 10px 15px -3px #0f172a14, 0 4px 6px -4px #0f172a0d;--shadow-focus:0 0 0 3px #0ea5e933;--transition-fast:.12s ease;--transition-base:.2s ease;--transition-slow:.35s ease}[data-theme=dark]{--clr-bg:#050f0e;--clr-accent:#fdbf68;--clr-bg-card:#0b1815;--clr-bg-card-hover:#122420;--clr-border:#ffffff1f;--clr-border-hover:#ffffff40;--clr-text-primary:#fff;--clr-text-secondary:#a6b5b1;--clr-text-muted:#768581;--clr-sidebar-bg:#040c0b;--clr-sidebar-border:#ffffff12;--clr-overdue:#f04d4d;--clr-critical:#f97316;--clr-warning:#d6b43e;--clr-success:#10b981;--clr-info:#fdbf68;--clr-overdue-bg:#ef44441f;--clr-critical-bg:#f973161f;--clr-warning-bg:#d6b43e1f;--clr-success-bg:#10b9811f;--clr-info-bg:#fdbf681f;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0000004d}[data-theme=dark] body{background-color:#050f0e;background-image:radial-gradient(circle at 0 0,#43774229 0%,#0000 45%),radial-gradient(circle at 100% 0,#fdbf6817 0%,#0000 45%),radial-gradient(circle at 50% 100%,#004f4638 0%,#0000 50%)}[data-theme=dark] .card,[data-theme=dark] .glass,[data-theme=dark] .metric-card{box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff1a;background:#ffffff0f;border-color:#fff3 #ffffff1f #ffffff1f}[data-theme=dark] .bottom-nav{background:#040c0bd1;border-top-color:#ffffff1f}[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:var(--clr-bg);border-color:var(--clr-border);color:var(--clr-text-primary)}[data-theme=dark] .modal{background:var(--clr-bg-card)}[data-theme=dark] .bottom-nav{background:var(--clr-sidebar-bg);border-color:var(--clr-sidebar-border)}[data-theme=dark] .bottom-nav__item{color:var(--clr-text-muted)}[data-theme=dark] .bottom-nav__item.active{color:var(--clr-brand-cream);font-weight:700}.bottom-nav__item.active>svg{background:#fdbf682e}[data-theme=dark] .mobile-drawer__panel{background:var(--clr-bg)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-md);font-feature-settings:"kern" 1, "liga" 1, "calt" 1;color:var(--clr-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#eef3f1;background-image:radial-gradient(circle at 0 0,#004f4638 0%,#0000 48%),radial-gradient(circle at 100% 0,#fdbf684d 0%,#0000 46%),radial-gradient(circle at 50% 100%,#4377422e 0%,#0000 52%);background-attachment:fixed;min-height:100dvh;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit}input,select,textarea{font-family:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}.app-layout{width:100%;min-height:100dvh;display:flex;overflow-x:hidden}.sidebar{width:var(--sidebar-width);background:var(--clr-sidebar-bg);border-right:1px solid var(--clr-sidebar-border);min-height:100dvh;padding:var(--space-6) 0;z-index:100;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.main-content{margin-left:var(--sidebar-width);min-width:0;padding:var(--space-8);background:0 0;flex:1;min-height:100dvh}.sidebar__logo{align-items:center;gap:var(--space-3);padding:0 var(--space-5);margin-bottom:var(--space-8);display:flex}.sidebar__logo-icon{flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.sidebar__logo-text{font-size:var(--font-lg);letter-spacing:-.02em;color:#fff;font-weight:800;line-height:1.2}.sidebar__logo-sub{font-size:var(--font-sm);color:#ffffff8c;line-height:1.3}.sidebar__nav{padding:0 var(--space-3);flex:1}.nav-item{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-md);color:var(--clr-sidebar-text);font-size:var(--font-sm);transition:all var(--transition-fast);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;margin-bottom:2px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{color:#fff;background:#ffffff12}.nav-item.active{color:var(--clr-sidebar-active-text);background:var(--clr-sidebar-active-bg);border-left:3px solid var(--clr-brand-cream);padding-left:calc(var(--space-3) - 3px);font-weight:600}.nav-item__icon{flex-shrink:0;align-items:center;display:flex}.nav-item__badge{background:var(--clr-overdue);color:#fff;border-radius:var(--radius-full);margin-left:auto;padding:1px 7px;font-size:10px;font-weight:700;line-height:18px}.card,.glass{-webkit-backdrop-filter:blur(40px)saturate(190%);border-radius:var(--radius-2xl);padding:var(--space-6);transition:box-shadow var(--transition-base), border-color var(--transition-base), transform var(--transition-base);background-color:#ffffffa8;background-image:linear-gradient(158deg,#ffffff8c 0%,#ffffff1f 38%,#fff0 58%);border:1px solid #ffffff8c;border-top-color:#fffffff2;box-shadow:0 1px 2px #004f460d,0 18px 40px -12px #004f462e,inset 0 1px #ffffffd9,inset 0 -1px #004f460f}.card:hover,.glass:hover{box-shadow:var(--shadow-md);border-color:var(--clr-border-hover)}.card--overdue{border-left:3px solid var(--clr-overdue)}.card--critical{border-left:3px solid var(--clr-critical)}.card--warning{border-left:3px solid var(--clr-warning)}.metric-grid{gap:var(--space-4);margin-bottom:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}@media (width>=768px){.metric-grid{grid-template-columns:repeat(6,1fr)}}.dashboard-mobile-bg{min-height:100dvh;margin:calc(var(--space-4) * -1);padding:var(--space-4);color:var(--clr-text-primary);margin-bottom:0;padding-bottom:120px}@media (width>=768px){.dashboard-mobile-bg{background:0 0;margin:0;padding:0}}.metric-card{-webkit-backdrop-filter:blur(40px)saturate(190%);border-radius:var(--radius-2xl);padding:var(--space-4);gap:var(--space-2);cursor:pointer;-webkit-tap-highlight-color:transparent;background-color:#ffffffa8;background-image:linear-gradient(158deg,#ffffff8c 0%,#ffffff1f 38%,#fff0 58%);border:1px solid #ffffff8c;border-top-color:#fffffff2;grid-template-rows:auto 1fr auto;min-height:128px;transition:transform .15s cubic-bezier(.32,.72,0,1),box-shadow .15s,background-color .15s;display:grid;box-shadow:0 1px 2px #004f460d,0 18px 40px -12px #004f462e,inset 0 1px #ffffffd9,inset 0 -1px #004f460f}.metric-card:active{background:var(--clr-bg-card-hover);transform:scale(.96);box-shadow:0 2px 10px #004f460d}.metric-card:hover{box-shadow:var(--shadow-md);border-color:var(--clr-border-hover);transform:translateY(-1px)}.metric-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.metric-card__label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;min-height:2.4em;color:var(--clr-text-secondary);font-weight:600;line-height:1.2}.metric-card__value{font-size:var(--font-2xl);color:var(--clr-text-primary);letter-spacing:-.02em;font-variant-numeric:tabular-nums;align-self:end;font-weight:800;line-height:1.15}.metric-card__sub{font-size:var(--font-xs);color:var(--clr-text-muted)}.badge{border-radius:var(--radius-full);font-size:var(--font-xs);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:5px;padding:3px 10px;font-weight:700;display:inline-flex}.badge--overdue{background:var(--clr-overdue-bg);color:var(--clr-overdue);border:1px solid color-mix(in srgb, var(--clr-overdue) 32%, transparent)}.badge--critical{background:var(--clr-critical-bg);color:var(--clr-critical);border:1px solid color-mix(in srgb, var(--clr-critical) 32%, transparent)}.badge--warning{background:var(--clr-warning-bg);color:var(--clr-warning);border:1px solid color-mix(in srgb, var(--clr-warning) 32%, transparent)}.badge--success{background:var(--clr-success-bg);color:var(--clr-success);border:1px solid color-mix(in srgb, var(--clr-success) 32%, transparent)}.badge--info{background:var(--clr-info-bg);color:var(--clr-info);border:1px solid color-mix(in srgb, var(--clr-info) 32%, transparent)}.badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-sm);transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;font-weight:600;line-height:1;display:inline-flex}.btn--primary{background:var(--clr-brand-cream);color:var(--clr-brand-dark);border-color:var(--clr-brand-cream);box-shadow:0 4px 14px #fdbf6833}.btn--primary:hover{background:var(--clr-brand-cream-hover);border-color:var(--clr-brand-cream-hover);transform:translateY(-1px);box-shadow:0 6px 20px #fdbf684d}.btn--primary:focus-visible{box-shadow:0 0 0 3px #fdbf6866}.btn--ghost{color:var(--clr-text-secondary);border-color:var(--clr-border);background:0 0}.btn--ghost:hover{background:var(--clr-bg-card-hover);color:var(--clr-text-primary);border-color:var(--clr-border-hover)}.btn--danger{background:var(--clr-overdue-bg);color:var(--clr-overdue);border-color:#fecaca}.btn--danger:hover{background:#fee2e2}.btn--sm{padding:var(--space-2) var(--space-3);font-size:var(--font-xs)}.btn--icon{padding:var(--space-2)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--font-sm);color:var(--clr-text-secondary);font-weight:500}.form-input{border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--clr-text-primary);font-size:var(--font-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);appearance:none;background:#fff;width:100%;min-width:0}.form-input:focus{border-color:var(--clr-brand-cream);outline:none;box-shadow:0 0 0 3px #fdbf6833}.form-input::placeholder{color:var(--clr-text-muted)}.form-input:disabled{cursor:not-allowed;background:#ffffff05}.progress-bar__track{background:var(--clr-bg-card-hover);border-radius:var(--radius-full);height:8px;overflow:hidden}.progress-bar__fill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.progress-bar__fill--success{background:var(--clr-success)}.progress-bar__fill--warning{background:var(--clr-warning)}.progress-bar__fill--critical{background:var(--clr-critical)}.progress-bar__fill--overdue{background:var(--clr-overdue)}.data-table{border-collapse:collapse;width:100%}.data-table th{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--clr-text-secondary);padding:var(--space-3) var(--space-4);text-align:left;border-bottom:2px solid var(--clr-border);background:var(--clr-bg-card-hover);font-weight:700}.data-table td{padding:var(--space-3) var(--space-4);font-size:var(--font-sm);border-bottom:1px solid var(--clr-border);vertical-align:middle;color:var(--clr-text-primary)}.data-table tr:hover td{background:var(--clr-bg-card-hover)}.data-table tr:last-child td{border-bottom:none}.panel-destacado{border-radius:var(--radius-2xl);padding:var(--space-5);background-color:#175d45;background-image:radial-gradient(circle at 12% 0,#004f468c 0%,#0000 55%),radial-gradient(circle at 100% 100%,#fdbf6833 0%,#0000 55%);position:relative;overflow:hidden;box-shadow:0 1px 2px #003b342e,0 20px 44px -16px #003b3473}.panel-destacado .section-title{color:#fff}.panel-destacado .section-title:before{background:var(--titulo-acento,linear-gradient(180deg, var(--clr-brand-cream) 0%, #fff 100%))}.panel-destacado .section-title__extra{color:#ffffffc7}.panel-destacado>.seccion__cabecera>.icon-chip{color:#fff;background:#ffffff24;border-color:#ffffff38;box-shadow:inset 0 1px #ffffff2e}.panel-destacado .metric-card{background-color:#ffffffeb;border-color:#ffffffbf #fff6 #fff6}.panel-destacado .metric-grid{margin-bottom:0}@media (width<=768px){.panel-destacado{margin-left:calc(var(--space-4) * -1);margin-right:calc(var(--space-4) * -1);padding-left:var(--space-4);padding-right:var(--space-4);border-radius:0}}.seccion{gap:var(--space-4);margin-bottom:var(--space-8);flex-direction:column;display:flex}.seccion__cabecera{align-items:center;gap:var(--space-3);display:flex}.dato-fila{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--clr-border);display:flex}.dato-fila:last-child{border-bottom:none;padding-bottom:0}.dato-fila__etiqueta{font-size:var(--font-sm);color:var(--clr-text-secondary)}.dato-fila__valor{font-size:var(--font-sm);text-align:right;font-weight:600}.section-title{align-items:center;gap:var(--space-3);padding-left:var(--space-4);margin:0 0 var(--space-3);font-size:var(--font-lg);letter-spacing:-.02em;color:var(--clr-text-primary);font-weight:800;line-height:1.25;display:flex;position:relative}.section-title:before{content:"";border-radius:var(--radius-full);background:var(--titulo-acento,linear-gradient(180deg, var(--clr-brand-dark) 0%, var(--clr-brand-green) 100%));width:3px;height:1.1em;position:absolute;top:50%;left:0;transform:translateY(-50%)}.section-title--sm{font-size:var(--font-md);font-weight:700}.section-title__extra{font-size:var(--font-sm);color:var(--clr-text-secondary);margin-left:auto;font-weight:600}.icon-chip{border-radius:var(--radius-lg);background:var(--chip-fondo,#004f4614);width:38px;height:38px;color:var(--chip-color,var(--clr-brand-dark));border:1px solid var(--chip-borde,#004f461f);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;box-shadow:inset 0 1px #ffffff8c}.icon-chip--sm{border-radius:var(--radius-md);width:30px;height:30px}[data-theme=dark] .icon-chip{background:var(--chip-fondo,#ffffff1a);color:var(--chip-color,#fff);border-color:var(--chip-borde,#ffffff29);box-shadow:inset 0 1px #ffffff24}.page-header{margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:center;display:flex}.page-title{align-items:center;gap:var(--space-3);padding-left:var(--space-4);font-size:var(--font-2xl);color:var(--clr-text-primary);letter-spacing:-.025em;font-weight:800;line-height:1.1;display:flex;position:relative}.page-title:before{content:"";border-radius:var(--radius-full);background:var(--titulo-acento,linear-gradient(180deg, var(--clr-brand-dark) 0%, var(--clr-brand-green) 100%));width:4px;height:1.05em;position:absolute;top:50%;left:0;transform:translateY(-50%)}.page-subtitle{font-size:var(--font-sm);color:var(--clr-text-muted);margin-top:var(--space-1)}.section-grid{gap:var(--space-6);grid-template-columns:1fr;display:grid}@media (width>=640px){.section-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}}.alert-banner{align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-3);border:1px solid;display:flex}.alert-banner:last-child{margin-bottom:0}.alert-banner--overdue{background:var(--clr-overdue-bg);border-color:color-mix(in srgb, var(--clr-overdue) 32%, transparent);border-left:4px solid var(--clr-overdue)}.alert-banner--critical{background:var(--clr-critical-bg);border-color:color-mix(in srgb, var(--clr-critical) 32%, transparent);border-left:4px solid var(--clr-critical)}.alert-banner--warning{background:var(--clr-warning-bg);border-color:color-mix(in srgb, var(--clr-warning) 32%, transparent);border-left:4px solid var(--clr-warning)}.alert-banner--info{background:var(--clr-info-bg);border-color:color-mix(in srgb, var(--clr-info) 32%, transparent);border-left:4px solid var(--clr-info)}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;padding:var(--space-6);background:#004f46cc;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{border:1px solid var(--clr-border);border-radius:var(--radius-2xl);padding:var(--space-5);width:100%;max-width:520px;box-shadow:var(--shadow-lg);background:#fff;max-height:90dvh;animation:.2s slideUp;overflow-y:auto}@media (width>=640px){.modal{padding:var(--space-8)}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal__header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:center;display:flex}.modal__title{font-size:var(--font-lg);font-weight:700}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--clr-border-hover)}.text-primary{color:var(--clr-text-primary)}.text-secondary{color:var(--clr-text-secondary)}.text-muted{color:var(--clr-text-muted)}.text-overdue{color:var(--clr-overdue)}.text-warning{color:var(--clr-warning)}.text-success{color:var(--clr-success)}.text-sm{font-size:var(--font-sm)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.w-full{width:100%}.bottom-nav{-webkit-backdrop-filter:blur(28px)saturate(180%);z-index:90;padding-bottom:env(safe-area-inset-bottom);background:#004f46eb;border-top:1px solid #ffffff24;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 32px -8px #00282359}.bottom-nav:after{content:"";background:linear-gradient(to left, var(--clr-brand-dark) 10%, transparent);pointer-events:none;z-index:2;width:40px;height:100%;position:absolute;top:0;right:0}.bottom-nav__list{padding:var(--space-2) var(--space-1);justify-content:space-around;align-items:center;gap:var(--space-1);display:flex}.bottom-nav__list::-webkit-scrollbar{display:none}.bottom-nav__item{color:#ffffffb8;min-width:64px;padding:var(--space-2) var(--space-1);min-height:52px;transition:color var(--transition-fast);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.bottom-nav__item>svg{border-radius:var(--radius-full);box-sizing:content-box;transition:background var(--transition-fast);padding:3px 12px}.bottom-nav__item.active{color:var(--clr-brand-cream)}.nav-accion{flex-shrink:0;justify-content:center;align-items:flex-start;min-width:64px;display:flex;position:relative}.nav-accion__boton{border:3px solid var(--clr-brand-dark);border-radius:var(--radius-full);background:var(--clr-brand-cream);width:54px;height:54px;color:var(--clr-brand-dark);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;margin-top:-18px;display:flex;box-shadow:0 6px 18px #00282359}.nav-accion__boton:active{transform:scale(.94)}.menu-accion__velo{z-index:95;background:#00282359;animation:.18s ease-out veloEntra;position:fixed;inset:0}.menu-accion{left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:96;align-items:stretch;gap:var(--space-2);width:min(300px, calc(100vw - var(--space-8)));flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}.menu-accion .fab-menu-item{opacity:0;justify-content:space-between;animation:.28s cubic-bezier(.16,1,.3,1) forwards accionEntra}.menu-accion .fab-menu-item:nth-child(3){animation-delay:0s}.menu-accion .fab-menu-item:nth-child(2){animation-delay:45ms}.menu-accion .fab-menu-item:first-child{animation-delay:90ms}.fab-menu-item__icono{border-radius:var(--radius-full);background:var(--clr-brand-cream);width:28px;height:28px;color:var(--clr-brand-dark);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@keyframes veloEntra{0%{opacity:0}to{opacity:1}}@keyframes accionEntra{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.menu-accion .fab-menu-item,.menu-accion__velo{opacity:1;animation:none;transform:none}}.fab-container{bottom:calc(var(--space-6) + env(safe-area-inset-bottom));right:var(--space-6);z-index:95;align-items:flex-end;gap:var(--space-3);flex-direction:column;display:flex;position:fixed}.fab{background:var(--clr-brand-cream);width:56px;height:56px;color:var(--clr-brand-dark);transition:transform var(--transition-base), box-shadow var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 14px #fdbf684d}.fab:hover{transform:scale(1.05);box-shadow:0 6px 20px #fdbf6866}.fab-menu{gap:var(--space-2);margin-bottom:var(--space-2);flex-direction:column;align-items:flex-end;animation:.2s slideUp;display:flex}.fab-menu-item{align-items:center;gap:var(--space-3);background:var(--clr-bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--clr-border);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);color:var(--clr-text-primary);font-size:var(--font-sm);box-shadow:var(--shadow-md);transition:background var(--transition-fast);font-weight:600;display:flex}.fab-menu-item:hover{background:var(--clr-bg-card-hover)}.dashboard-header-mobile{display:none}@media (width<=768px){.sidebar{display:none}.bottom-nav{display:block}.main-content{padding:var(--space-4);padding-top:calc(var(--space-4) + env(safe-area-inset-top));padding-bottom:calc(80px + env(safe-area-inset-bottom));margin-left:0}.dashboard-mobile-bg{padding-top:calc(var(--space-4) + env(safe-area-inset-top))}.card{padding:var(--space-4)}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-drawer{z-index:110;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;inset:0}.mobile-drawer__overlay{background:#00000059;position:absolute;inset:0}.mobile-drawer__panel{background:var(--clr-brand-dark);width:280px;max-width:85%;height:100%;color:var(--clr-sidebar-text);z-index:111;flex-direction:column;display:flex;position:relative;transform:translate(0);box-shadow:-6px 0 24px #0206178c}.mobile-drawer__header{border-bottom:1px solid var(--clr-sidebar-border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.mobile-drawer__title{color:var(--clr-brand-cream);font-weight:700}.mobile-drawer__close{color:var(--clr-brand-cream);background:0 0;border:none}.mobile-drawer__nav{flex-direction:column;gap:6px;padding:12px;display:flex}.mobile-drawer__item{color:var(--clr-sidebar-text);background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.mobile-drawer__item.active{color:var(--clr-brand-cream);background:#fdbf681f;border-color:#fdbf6859}.mobile-drawer__item--danger{color:#fca5a5f2;background:#ef444414;border-color:#ef444440}.page-header{display:none}.dashboard-header-mobile{align-items:center;gap:var(--space-3);text-align:left;margin-bottom:var(--space-5);margin-top:var(--space-1);flex-direction:row;padding:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards premiumEntrance;display:flex}.dashboard-header-mobile__texto{flex-direction:column;min-width:0;display:flex}.dashboard-header-mobile__subtitle{font-size:var(--font-xs);color:var(--clr-text-muted);line-height:1.2}.dashboard-header-mobile__logo{object-fit:contain;filter:drop-shadow(0 4px 12px #004f4626);flex-shrink:0;width:44px;height:44px;animation:4s ease-in-out infinite alternate logoFloat}.dashboard-header-mobile__title{letter-spacing:-.6px;background:linear-gradient(135deg, var(--clr-brand-dark) 0%, var(--clr-brand-green) 55%, #7a651a 100%);-webkit-text-fill-color:transparent;text-fill-color:transparent;text-shadow:0 2px 10px #004f460d;text-align:right;width:100%;padding-right:var(--space-4);-webkit-background-clip:text;background-clip:text;margin:0;font-size:24px;font-weight:800}@keyframes premiumEntrance{0%{opacity:0;transform:translateY(15px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes logoFloat{0%{transform:translateY(0)}to{transform:translateY(-4px)}}}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}}.logo{align-items:center;gap:var(--space-3);display:inline-flex}.logo__simbolo{flex-shrink:0;overflow:visible}.logo__palabra{font-family:var(--font-family);letter-spacing:-.03em;white-space:nowrap;font-weight:800;line-height:1}.logo--encendido .logo__aguja-grupo{transform-origin:20px 21px;animation:3s cubic-bezier(.34,1.3,.5,1) infinite logoEncendido}.logo--encendido .logo__arco{animation:3s ease-in-out infinite logoArcoEnciende}@keyframes logoEncendido{0%{transform:rotate(-125deg)}26%{transform:rotate(6deg)}36%{transform:rotate(6deg)}58%{transform:rotate(-46deg)}66%{transform:rotate(-36deg)}74%{transform:rotate(-40deg)}92%{transform:rotate(-40deg)}to{transform:rotate(-125deg)}}@keyframes logoArcoEnciende{0%,20%{opacity:.2}30%,62%{opacity:1}80%,to{opacity:.2}}.logo--entrada .logo__arco{stroke-dasharray:96;stroke-dashoffset:96px;animation:1.5s cubic-bezier(.16,1,.3,1) forwards logoTrazo}.logo--entrada .logo__aguja-grupo{opacity:0;transform-origin:20px 21px;animation:.7s cubic-bezier(.16,1,.3,1) .95s forwards logoAgujaEntra}@keyframes logoTrazo{to{stroke-dashoffset:0}}@keyframes logoAgujaEntra{0%{opacity:0;transform:rotate(-40deg)}to{opacity:1;transform:rotate(0)}}.logo--entrada .logo__palabra{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) 1.35s forwards logoPalabraEntra}@keyframes logoPalabraEntra{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.logo--espera .logo__aguja-grupo{transform-origin:20px 21px;animation:1.15s linear infinite logoGiro}.logo--espera .logo__arco{opacity:.22}@keyframes logoGiro{to{transform:rotate(360deg)}}.logo--latido .logo__aguja-grupo circle{transform-origin:20px 21px;animation:1.5s ease-in-out infinite logoLatido}@keyframes logoLatido{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.3)}}.logo--confirmacion .logo__aguja-grupo{transform-origin:20px 21px;animation:1.1s cubic-bezier(.22,1,.36,1) forwards logoConfirmaAguja}.logo--confirmacion .logo__arco{stroke-dasharray:96;stroke-dashoffset:96px;animation:1.1s ease-out forwards logoConfirmaArco}@keyframes logoConfirmaAguja{0%{transform:rotate(-110deg)}55%{transform:rotate(6deg)}72%{transform:rotate(-4deg)}to{transform:rotate(0)}}@keyframes logoConfirmaArco{0%{stroke-dashoffset:96px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.logo__arco,.logo__aguja-grupo,.logo__aguja-grupo circle,.logo__palabra{opacity:1!important;stroke-dashoffset:0!important;animation:none!important;transform:none!important}}.confirmacion{z-index:1200;justify-content:center;align-items:center;gap:var(--space-4);-webkit-backdrop-filter:blur(6px);pointer-events:none;background:#003b349e;flex-direction:column;animation:.2s ease-out confirmacionEntra;display:flex;position:fixed;inset:0}.confirmacion--saliendo{animation:.28s ease-in forwards confirmacionSale}.confirmacion__texto{font-size:var(--font-md);color:#fff;letter-spacing:-.01em;font-weight:700}@keyframes confirmacionEntra{0%{opacity:0}to{opacity:1}}@keyframes confirmacionSale{0%{opacity:1}to{opacity:0}}.acceso-documentos{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4);color:inherit;min-height:64px;transition:transform var(--transition-fast), box-shadow var(--transition-base);text-decoration:none;display:flex}.acceso-documentos:active{transform:scale(.99)}.acceso-documentos__texto{flex-direction:column;flex:1;min-width:0;display:flex}.acceso-documentos__titulo{font-size:var(--font-md);letter-spacing:-.01em;color:var(--clr-text-primary);font-weight:700}.acceso-documentos__sub{font-size:var(--font-sm);color:var(--clr-text-secondary)}.acceso-documentos__estados{gap:var(--space-3);flex-wrap:wrap;margin-top:2px;display:flex}.doc-estado{font-size:var(--font-sm);color:var(--clr-text-secondary);align-items:center;gap:5px;font-weight:600;display:inline-flex}.doc-estado__punto{border-radius:50%;flex-shrink:0;width:8px;height:8px}.acceso-documentos__flecha{color:var(--clr-text-secondary);flex-shrink:0}.inicio-columnas{gap:var(--space-6);flex-direction:column;display:flex}@media (width>=1024px){.inicio-columnas{gap:var(--space-6);grid-template-columns:minmax(0,5fr) minmax(0,4fr);align-items:start;display:grid}.inicio-columnas__urgente,.inicio-columnas__referencia{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}}.pantalla{min-height:100dvh;padding-bottom:calc(var(--alto-nav) + var(--space-6))}@media (width>=1024px){.pantalla{padding-bottom:var(--space-8)}}.error-form{background:var(--clr-overdue-bg);border:1px solid color-mix(in srgb, var(--clr-overdue) 32%, transparent);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--font-sm);color:var(--clr-overdue)}.obligatorio{color:var(--clr-overdue)}.texto-apoyo{font-size:var(--font-sm);color:var(--clr-text-muted)}.texto-secundario{font-size:var(--font-sm);color:var(--clr-text-secondary)}.texto-menor{font-size:var(--font-xs);color:var(--clr-text-muted)}.etiqueta{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--clr-text-muted);font-weight:600}
