@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-opsz-normal-CfYZpDVp.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-opsz-normal-BFQXbQ-f.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-opsz-normal-BmPQvyvo.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-opsz-normal-BM0NlUE_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-opsz-normal-Ci9T9ieq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-opsz-normal-DpK-iCPk.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-opsz-normal-BwkfbSeq.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.login-container{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--color-background);padding:max(var(--space-24),env(safe-area-inset-top)) max(var(--space-24),env(safe-area-inset-right)) max(var(--space-24),env(safe-area-inset-bottom)) max(var(--space-24),env(safe-area-inset-left));position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(var(--color-primary-rgb),.04) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(var(--color-success-rgb),.04) 0%,transparent 50%)}.login-card{background:var(--color-surface);padding:var(--space-40) var(--space-32);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:546px;border:1px solid var(--color-border);position:relative;z-index:var(--z-base);animation:slide-up var(--duration-slow) var(--ease-out)}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rmp-logo{text-align:center;margin-bottom:var(--space-32);animation:fade-in var(--duration-normal) var(--ease-emphasis) .1s backwards}@keyframes fade-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.logo-image{width:180px;height:auto;margin:0 auto;display:block;animation:rmp-scale-in var(--duration-slow) var(--ease-out-quint) .12s both}.rmp-logo h1{font-family:var(--font-family-display);font-size:28px;font-weight:var(--font-weight-semibold);background:linear-gradient(135deg,#0d5c4c,#16877a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 8px;letter-spacing:var(--letter-spacing-tight)}.rmp-logo p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;font-weight:var(--font-weight-medium);letter-spacing:.5px}.error-message{background:var(--alpha-ios-red-tint);border:1px solid var(--alpha-ios-red-soft);color:var(--color-error);padding:14px 18px;border-radius:var(--radius-md);margin-bottom:24px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);animation:login-shake var(--duration-normal) var(--ease-out),fade-in var(--duration-fast) var(--ease-out);line-height:var(--line-height-normal);display:flex;align-items:flex-start;gap:var(--space-10)}.error-message svg{flex-shrink:0;color:var(--color-error)}@keyframes login-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.form-group{margin-bottom:24px;animation:fade-in var(--duration-normal) var(--ease-out) backwards}.form-group:nth-child(1){animation-delay:.15s}.form-group:nth-child(2){animation-delay:.2s}.form-label-modern{display:block;font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:8px;letter-spacing:.2px}.form-control-modern{display:block;width:100%;padding:14px 16px;font-size:16px;line-height:1.5;color:var(--color-text);background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:var(--radius-base);transition:border-color var(--duration-fast) var(--ease-emphasis),background var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis);font-family:var(--font-family-base);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-weight:400}.form-control-modern:hover{border-color:var(--color-border-strong)}.form-control-modern:focus,.form-control-modern:focus-visible{outline:none;border-color:var(--color-action-bg);background:var(--color-surface);box-shadow:var(--ring-focus)}.form-control-modern::placeholder{color:var(--color-text-muted);font-weight:400}.btn--primary{width:100%;padding:15px 24px;background:var(--color-action-bg);color:var(--color-on-action);border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease,opacity .3s ease,transform .3s ease;position:relative;overflow:hidden;margin-top:8px;animation:fade-in var(--duration-normal) var(--ease-out) .3s backwards;letter-spacing:.3px;box-shadow:var(--shadow-xs)}.btn--primary:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--alpha-highlight-light),transparent);opacity:0;transition:opacity var(--duration-slow) ease}.btn--primary:hover{background:var(--color-action-bg-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn--primary:hover:before{opacity:1}.btn--primary:active{background:var(--color-action-bg-active);transform:translateY(0);box-shadow:var(--shadow-xs)}.btn--primary:disabled{background:var(--color-text-muted);cursor:not-allowed;transform:none;box-shadow:none}.btn--outline{padding:10px 16px;border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease,opacity .3s ease,transform .3s ease;letter-spacing:.2px}.btn--outline:hover{background:var(--color-surface-secondary);border-color:var(--color-action-bg);color:var(--color-action-bg);transform:translateY(-1px);box-shadow:var(--shadow-xs)}.btn--outline:active{transform:translateY(0)}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper .form-control-modern{padding-right:60px}.password-toggle-modern{position:absolute;right:8px;background:none;border:none;cursor:pointer;width:44px;height:44px;padding:0;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,opacity .2s ease,transform .2s ease;opacity:.5;color:var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;border-radius:6px}.password-toggle-modern:hover{opacity:1;color:var(--color-action-bg);background:var(--color-hover-overlay)}.password-toggle-modern:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;opacity:1}.password-toggle-modern:disabled{cursor:not-allowed;opacity:.25}.btn--sm{padding:8px 12px;font-size:12px}@media (max-width: 480px){.login-card{padding:40px 30px;max-width:100%}.logo-image{width:180px}.form-control-modern{padding:16px 20px;font-size:16px}}@media (prefers-reduced-motion: reduce){.login-card,.rmp-logo,.logo-image,.error-message,.form-group,.btn--primary{animation:none}.form-control-modern,.btn--primary,.btn--outline,.password-toggle-modern{transition:none}.btn--primary:hover{transform:none}}.upsell-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-16);background:var(--alpha-overlay-darker);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:rmp-fade-in var(--duration-fast) var(--ease-emphasis) both}.upsell{width:100%;max-width:520px;max-height:calc(100dvh - var(--space-32));overflow-y:auto;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:rmp-scale-in var(--duration-normal) var(--ease-out-quint) both}.upsell__head{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-20) var(--space-20) var(--space-16)}.upsell__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:var(--radius-md);background:var(--color-surface-secondary);color:var(--color-text-secondary);box-shadow:var(--ring-hairline)}.upsell__titles{flex:1;min-width:0}.upsell__eyebrow{margin:0 0 2px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-tertiary)}.upsell__title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading);color:var(--color-text)}.upsell__close{display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:flex-start;width:30px;height:30px;padding:0;color:var(--color-text-tertiary);background:transparent;border:none;border-radius:var(--radius-base);cursor:pointer;transition:background var(--duration-fast) var(--ease-emphasis),color var(--duration-fast) var(--ease-emphasis)}.upsell__close:hover{background:var(--color-hover-overlay);color:var(--color-text)}.upsell__close:focus-visible{outline:none;box-shadow:var(--ring-focus)}.upsell__body{padding:0 var(--space-20) var(--space-20);display:flex;flex-direction:column;gap:var(--space-16)}.upsell__resumen{margin:0;font-size:var(--font-size-base);line-height:1.55;color:var(--color-text-secondary)}.upsell__beneficios{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-8)}.upsell__beneficios li{display:flex;align-items:flex-start;gap:var(--space-10);font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text)}.upsell__tick{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;margin-top:1px;border-radius:var(--radius-full);background:var(--color-success-light);color:var(--color-success)}.upsell__contacto{padding-top:var(--space-16);border-top:1px solid var(--color-border)}.upsell__contacto-label{display:block;margin-bottom:var(--space-10);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-tertiary)}.upsell__canales{display:flex;flex-direction:column;gap:var(--space-8)}.upsell__canal{display:flex;align-items:center;gap:var(--space-12);min-height:var(--control-h-lg);padding:var(--space-10) var(--space-12);text-decoration:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);box-shadow:var(--shadow-xs);transition:border-color var(--duration-fast) var(--ease-emphasis),background var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis)}.upsell__canal:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.upsell__canal:focus-visible{outline:none;box-shadow:var(--ring-focus)}.upsell__canal-icono{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:var(--radius-base);background:var(--color-surface-secondary);color:var(--color-text-secondary);box-shadow:var(--ring-hairline);transition:color var(--duration-fast) var(--ease-emphasis)}.upsell__canal:hover .upsell__canal-icono{color:var(--color-text)}.upsell__canal-cuerpo{display:flex;flex-direction:column;min-width:0;flex:1}.upsell__canal-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-micro);color:var(--color-text-tertiary)}.upsell__canal-valor{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);font-variant-numeric:var(--font-numeric);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upsell__canal-pie{flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.upsell__canal-chevron{flex-shrink:0;color:var(--color-text-tertiary);transition:transform var(--duration-fast) var(--ease-emphasis)}.upsell__canal:hover .upsell__canal-chevron{transform:translate(2px)}@media (prefers-reduced-motion: reduce){.upsell__canal:hover .upsell__canal-chevron{transform:none}}.upsell__nota{margin:0;font-size:var(--font-size-xs);line-height:1.5;color:var(--color-text-tertiary)}.upsell__nota strong{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.upsell__foot{display:flex;justify-content:flex-end;padding:var(--space-12) var(--space-20);border-top:1px solid var(--color-border);background:var(--color-surface-secondary);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.upsell__btn{display:inline-flex;align-items:center;gap:var(--space-6);min-height:var(--control-h-sm);padding:var(--space-6) var(--space-12);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-base);border:1px solid transparent;cursor:pointer;transition:background var(--duration-fast) var(--ease-emphasis),color var(--duration-fast) var(--ease-emphasis)}.upsell__btn:focus-visible{outline:none;box-shadow:var(--ring-focus)}.upsell__btn--ghost{background:transparent;color:var(--color-text-secondary)}.upsell__btn--ghost:hover{background:var(--color-hover-overlay);color:var(--color-text)}@media (max-width: 520px){.upsell__canal-pie{display:none}.upsell__btn{justify-content:center;width:100%}}.google-places-error-boundary{display:flex;align-items:center;justify-content:center;min-height:400px;padding:var(--space-24);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.error-content{max-width:500px;text-align:center}.error-icon{margin-bottom:var(--space-16);color:var(--color-error);display:flex;align-items:center;justify-content:center}.error-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-12) 0}.error-message{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0 0 var(--space-16) 0}.error-reasons{text-align:left;margin:0 0 var(--space-20) 0;padding:var(--space-16);background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:var(--radius-base);list-style:none}.error-reasons li{position:relative;padding-left:var(--space-20);margin-bottom:var(--space-8);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.error-reasons li:last-child{margin-bottom:0}.error-reasons li:before{content:"•";position:absolute;left:var(--space-8);color:var(--color-error);font-weight:var(--font-weight-bold)}.reload-button{display:inline-flex;align-items:center;gap:var(--space-8);padding:var(--space-12) var(--space-20);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);background:var(--color-action-bg);color:#fff;border:1px solid var(--color-primary);border-radius:var(--radius-base);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.reload-button:hover{background:var(--color-action-bg-hover)}.reload-button:active{transform:scale(.98)}.reload-button svg{flex-shrink:0}.error-details{margin-top:var(--space-20);padding:var(--space-12);background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:var(--radius-base);text-align:left;cursor:pointer}.error-details summary{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.error-details summary:hover{color:var(--color-text)}.error-stack{margin-top:var(--space-12);padding:var(--space-12);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;color:var(--color-text);white-space:pre-wrap;word-wrap:break-word;overflow-x:auto;max-height:300px;overflow-y:auto}.error-stack strong{color:var(--color-error)}@media (max-width: 480px){.google-places-error-boundary{min-height:320px;padding:var(--space-16)}.error-title{font-size:var(--font-size-md)}.error-reasons{padding:var(--space-12)}.reload-button{width:100%;justify-content:center}}:root{--color-background: #f8fafc;--color-surface: #ffffff;--color-surface-secondary: #f1f5f9;--color-surface-elevated: #ffffff;--color-surface-acrylic: rgba(255, 255, 255, .8);--color-white-alpha-15: rgba(255, 255, 255, .15);--color-white-alpha-25: rgba(255, 255, 255, .25);--color-text: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #64748b;--color-text-muted: #94a3b8;--color-primary: #1e293b;--color-primary-hover: #334155;--color-primary-active: #0f172a;--color-primary-dark: #0f172a;--color-primary-light: #334155;--color-primary-subtle: rgba(30, 41, 59, .1);--color-text-on-primary: #ffffff;--color-action-bg: #10b981;--color-action-bg-hover: #059669;--color-action-bg-active: #047857;--color-action-bg-disabled: #d1d5db;--color-on-action: #ffffff;--color-accent: #10b981;--color-accent-light: rgba(16, 185, 129, .12);--color-accent-border: rgba(16, 185, 129, .3);--color-secondary: #475569;--color-secondary-hover: #334155;--color-secondary-active: #1e293b;--color-secondary-light: #64748b;--color-border: rgba(30, 41, 59, .08);--color-border-strong: rgba(30, 41, 59, .15);--color-divider: rgba(30, 41, 59, .06);--color-error: #ef4444;--color-error-light: #fee2e2;--color-error-dark: #dc2626;--color-success: #10b981;--color-success-dark: #047857;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-info-dark: #2563eb;--color-escala-s: var(--color-success);--color-escala-m: #0078D4;--color-escala-l: #5C2D91;--color-escala-xl: #B4009E;--color-escala-xxl: var(--color-error);--color-alert-critical: #FF8C00;--color-cat-baja: #16a34a;--color-cat-baja-light: #dcfce7;--color-cat-intermedia: #d97706;--color-cat-intermedia-light: #fef3c7;--color-cat-alta: #2563eb;--color-cat-alta-light: #dbeafe;--color-cat-muy-alta: #dc2626;--color-cat-muy-alta-light: #fee2e2;--color-focus-ring: rgba(30, 41, 59, .4);--color-hover-overlay: rgba(0, 0, 0, .03);--color-active-overlay: rgba(0, 0, 0, .06);--focus-ring: 0 0 0 3px var(--color-focus-ring);--focus-outline: 2px solid var(--color-primary);--status-bg-opacity: .15;--status-border-opacity: .25;--select-caret-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231B4523' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--select-caret-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--color-success-contrast: #0B6A0B;--color-error-contrast: #A4262C;--color-warning-contrast: #8A5700;--color-info-contrast: #004578;--color-success-border: rgba(16, 124, 16, .3);--color-error-border: rgba(209, 52, 56, .3);--color-warning-border: rgba(255, 185, 0, .3);--color-info-border: rgba(0, 120, 212, .3);--color-neutral-border: rgba(138, 136, 134, .3);--color-neutral-light: #E1DFDD;--color-primary-rgb: 30, 41, 59;--color-text-rgb: 15, 23, 42;--color-success-rgb: 16, 185, 129;--color-error-rgb: 239, 68, 68;--color-warning-rgb: 245, 158, 11;--color-info-rgb: 59, 130, 246;--gradient-primary: linear-gradient(135deg, #1e293b 0%, #334155 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-warning: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-error: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--gradient-info: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--gradient-text-dark: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);--gradient-text-accent: linear-gradient(135deg, #1e293b 0%, #1e40af 100%);--historical-banner-bg: var(--color-warning-light);--historical-banner-fg: var(--color-warning-dark);--historical-banner-border: var(--color-warning);--color-text-primary: var(--color-text);--color-surface-alt: #f1f5f9;--color-surface-hover: rgba(30, 41, 59, .04);--color-primary-light: rgba(30, 41, 59, .1);--color-success-light: #d1fae5;--color-warning-light: #fef3c7;--color-danger: var(--color-error);--color-danger-light: #fee2e2;--font-family-base: "Inter Variable", "Inter", "Inter Fallback", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-display: var(--font-family-base);--font-family-mono: "SF Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-md: 17px;--font-size-lg: 19px;--font-size-xl: 21px;--font-size-2xl: 26px;--font-size-3xl: 32px;--font-size-4xl: 40px;--font-size-5xl: 52px;--font-weight-regular: 400;--font-weight-normal: var(--font-weight-regular);--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.1;--line-height-snug: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--tracking-display: -.03em;--tracking-heading: -.02em;--tracking-body: -.011em;--tracking-small: 0;--tracking-micro: .01em;--tracking-caps: .06em;--letter-spacing-tight: var(--tracking-heading);--letter-spacing-normal: var(--tracking-body);--letter-spacing-wide: var(--tracking-micro);--font-numeric: tabular-nums lining-nums;--icon-color-primary: var(--color-primary);--icon-color-secondary: var(--color-text-secondary);--icon-color-error: var(--color-error);--icon-color-success: var(--color-success);--icon-color-warning: var(--color-warning);--space-0: 0;--space-2: 2px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-14: 14px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-28: 28px;--space-32: 32px;--space-40: 40px;--space-48: 48px;--space-56: 56px;--space-64: 64px;--radius-xs: 4px;--radius-sm: 6px;--radius-base: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--shadow-xs: 0 1px 2px -1px rgba(0, 0, 0, .08), 0 1px 1px rgba(30, 41, 59, .04);--shadow-sm: 0 1px 2px -1px rgba(0, 0, 0, .08), 0 2px 4px -2px rgba(30, 41, 59, .06);--shadow-md: 0 2px 4px -2px rgba(0, 0, 0, .08), 0 6px 12px -4px rgba(30, 41, 59, .1);--shadow-lg: 0 4px 8px -4px rgba(0, 0, 0, .1), 0 12px 24px -8px rgba(30, 41, 59, .14);--shadow-xl: 0 8px 16px -8px rgba(0, 0, 0, .12), 0 24px 48px -16px rgba(30, 41, 59, .18);--shadow-2xl: 0 12px 24px -12px rgba(0, 0, 0, .14), 0 40px 72px -24px rgba(30, 41, 59, .22);--ring-hairline: inset 0 0 0 1px rgba(30, 41, 59, .06);--ring-1: 0 0 0 1px rgba(30, 41, 59, .08);--ring-focus: 0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-focus-ring);--z-base: 1;--z-sticky: 10;--z-dropdown: 100;--z-modal: 1000;--z-overlay: 2000;--z-toast: 10000;--z-overlay-max: 99999;--alpha-overlay-faint: rgba(0, 0, 0, .04);--alpha-overlay-soft: rgba(0, 0, 0, .06);--alpha-overlay-light: rgba(0, 0, 0, .08);--alpha-overlay-base: rgba(0, 0, 0, .1);--alpha-overlay-medium: rgba(0, 0, 0, .15);--alpha-overlay-strong: rgba(0, 0, 0, .3);--alpha-overlay-darker: rgba(0, 0, 0, .4);--alpha-overlay-backdrop: rgba(0, 0, 0, .5);--alpha-overlay-heavy: rgba(0, 0, 0, .6);--alpha-overlay-deep: rgba(0, 0, 0, .8);--alpha-overlay-near-opaque: rgba(0, 0, 0, .9);--alpha-overlay-opaque: rgba(0, 0, 0, .95);--alpha-highlight-faint: rgba(255, 255, 255, .05);--alpha-highlight-soft: rgba(255, 255, 255, .06);--alpha-highlight-base: rgba(255, 255, 255, .08);--alpha-highlight-light: rgba(255, 255, 255, .1);--alpha-highlight-medium: rgba(255, 255, 255, .15);--alpha-highlight-strong: rgba(255, 255, 255, .2);--alpha-highlight-heavy: rgba(255, 255, 255, .3);--alpha-error-tint: rgba(209, 52, 56, .1);--alpha-error-soft: rgba(209, 52, 56, .2);--alpha-success-tint: rgba(16, 124, 16, .1);--alpha-success-soft: rgba(16, 124, 16, .2);--alpha-warning-tint: rgba(255, 185, 0, .1);--alpha-warning-soft: rgba(255, 185, 0, .2);--alpha-info-tint: rgba(0, 120, 212, .1);--alpha-info-soft: rgba(0, 120, 212, .2);--alpha-ios-red-tint: rgba(255, 59, 48, .1);--alpha-ios-red-soft: rgba(255, 59, 48, .2);--alpha-ios-orange-tint: rgba(255, 149, 0, .1);--alpha-ios-orange-soft: rgba(255, 149, 0, .2);--alpha-ios-green-tint: rgba(52, 199, 89, .1);--alpha-ios-green-soft: rgba(52, 199, 89, .2);--alpha-ios-blue-tint: rgba(0, 122, 255, .1);--shadow-primary-glow: 0 4px 16px rgba(30, 41, 59, .3), 0 2px 4px rgba(0, 0, 0, .1);--shadow-success-glow: 0 4px 16px rgba(16, 185, 129, .3), 0 2px 4px rgba(0, 0, 0, .1);--shadow-warning-glow: 0 4px 16px rgba(245, 158, 11, .3), 0 2px 4px rgba(0, 0, 0, .1);--shadow-error-glow: 0 4px 16px rgba(239, 68, 68, .3), 0 2px 4px rgba(0, 0, 0, .1);--shadow-info-glow: 0 4px 16px rgba(59, 130, 246, .3), 0 2px 4px rgba(0, 0, 0, .1);--shadow-elevated: var(--shadow-sm);--shadow-card: var(--shadow-xs);--shadow-card-hover: var(--shadow-sm);--shadow-focus: var(--ring-focus);--shadow-inset: inset 0 1px 2px 0 rgba(0, 0, 0, .05);--duration-instant: 80ms;--duration-fast: .14s;--duration-base: var(--duration-fast);--duration-normal: .22s;--duration-slow: .32s;--duration-slower: .42s;--stagger-step: 40ms;--stagger-cap: .28s;--ease-emphasis: cubic-bezier(.32, .72, 0, 1);--ease-standard: var(--ease-emphasis);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-spring-subtle: cubic-bezier(.34, 1.26, .64, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-spring: var(--ease-spring-subtle);--ease-smooth: cubic-bezier(.16, 1, .3, 1);--crono-shadow-1: var(--shadow-xs);--crono-shadow-2: var(--shadow-md);--crono-shadow-3: var(--shadow-lg);--crono-ease-soft: var(--ease-emphasis);--crono-ease-spring: var(--ease-spring-subtle);--crono-rec: #0078d4;--crono-rec-soft: rgba(0, 120, 212, .12);--crono-rec-glow: rgba(0, 120, 212, .35);--crono-lim: #107c10;--crono-lim-soft: rgba(16, 124, 16, .12);--crono-lim-glow: rgba(16, 124, 16, .35);--crono-fum: #d97706;--crono-fum-soft: rgba(217, 119, 6, .14);--crono-fum-glow: rgba(217, 119, 6, .35);--crono-mto: #6264a7;--crono-mto-soft: rgba(98, 100, 167, .12);--crono-mto-glow: rgba(98, 100, 167, .35);--crono-rec-ink-1: #004578;--crono-rec-ink-2: #00284a;--crono-lim-ink-1: #054b05;--crono-lim-ink-2: #022a02;--crono-fum-ink-1: #7c4a00;--crono-fum-ink-2: #4a2e00;--crono-mto-ink-1: #2f2f6e;--crono-mto-ink-2: #1d1d4a;--crono-ink-on-fill: #ffffff;--crono-shadow-glow-rec: 0 8px 24px var(--crono-rec-glow);--crono-shadow-glow-lim: 0 8px 24px var(--crono-lim-glow);--crono-shadow-glow-fum: 0 8px 24px var(--crono-fum-glow);--crono-shadow-glow-mto: 0 8px 24px var(--crono-mto-glow);--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--layout-gutter: var(--space-20);--layout-section-gap: var(--space-24);--layout-card-pad: var(--space-16);--layout-grid-gap: var(--space-16);--grid-min-micro: 120px;--grid-min-compact: 170px;--grid-min-card: 280px;--grid-min-wide: 380px;--control-h-sm: 30px;--control-h: 36px;--control-h-lg: 44px;--enterprise-table-row-height: 40px;--enterprise-table-row-height-dense: 36px;--enterprise-table-row-height-comfortable: 48px;--enterprise-card-padding: var(--space-12);--enterprise-section-gap: var(--space-16);--enterprise-grid-gap: var(--space-12);--enterprise-badge-padding: 4px 8px;--enterprise-button-padding: var(--space-8) var(--space-16);--enterprise-input-height: 36px;--enterprise-icon-size-sm: 16px;--enterprise-icon-size-md: 20px;--enterprise-icon-size-lg: 24px}@font-face{font-family:Inter Fallback;src:local("Arial"),local("Helvetica");size-adjust:107.12%;ascent-override:90.49%;descent-override:22.56%;line-gap-override:0%}html{font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;color-scheme:light;font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"cv05" 1;font-optical-sizing:auto;font-synthesis-weight:none;scroll-behavior:smooth;background:var(--color-background)}body{font-family:var(--font-family-base);background:var(--color-background);color:var(--color-text);margin:0;padding:0;overflow-x:hidden}*,*:before,*:after{box-sizing:border-box}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full);border:2px solid var(--color-background)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::-webkit-scrollbar-corner{background:var(--color-background)}*{scrollbar-color:var(--color-border-strong) var(--color-background);scrollbar-width:thin}::selection{background-color:var(--color-primary);color:#fff}::-moz-selection{background-color:var(--color-primary);color:#fff}*:focus{outline:none}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--ring-focus)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3,h4,h5,h6,p{margin:0;font-weight:var(--font-weight-normal)}h1{font-family:var(--font-family-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-display);line-height:1.08}h2{font-family:var(--font-family-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading);line-height:1.15}h3{font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading);line-height:1.25}h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-body);line-height:1.3}h5{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-body)}h6{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-small)}p{line-height:var(--line-height-normal)}a{color:var(--color-primary);text-decoration:none;transition:color var(--duration-fast) var(--ease-standard)}a:hover{color:var(--color-primary-hover)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;min-height:var(--control-h);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug);letter-spacing:var(--tracking-body);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-emphasis),border-color var(--duration-fast) var(--ease-emphasis),color var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis),transform var(--duration-instant) var(--ease-emphasis);border:none;text-decoration:none;-webkit-user-select:none;user-select:none;position:relative}.btn:focus-visible{outline:none;box-shadow:var(--ring-focus)}.btn--primary{background-color:var(--color-action-bg);color:var(--color-on-action);box-shadow:var(--shadow-xs),inset 0 1px 0 var(--alpha-highlight-medium)}.btn--primary:hover{background-color:var(--color-action-bg-hover);box-shadow:var(--shadow-sm),inset 0 1px 0 var(--alpha-highlight-medium)}.btn--primary:active{background-color:var(--color-action-bg-active);transform:scale(.98);box-shadow:var(--shadow-xs)}.btn--secondary{background-color:var(--color-surface-secondary);color:var(--color-text);border:1px solid var(--color-border-strong)}.btn--secondary:hover{background-color:var(--color-surface-secondary);border-color:var(--color-action-bg);color:var(--color-action-bg)}.btn--secondary:active{background-color:var(--color-surface-secondary)}.btn--ghost{background:transparent;color:var(--color-text-secondary);border:1px solid transparent}.btn--ghost:hover{background:var(--color-hover-overlay);color:var(--color-text);border-color:var(--color-border)}.btn--ghost:active{background:var(--color-active-overlay)}.btn--info{background-color:var(--color-info);color:#fff;box-shadow:var(--shadow-sm)}.btn--info:hover{background-color:var(--color-info-dark);box-shadow:var(--shadow-sm),inset 0 1px 0 var(--alpha-highlight-medium)}.btn--info:active{background-color:var(--color-info-dark);transform:scale(.98)}.btn--outline{background:transparent;border:1px solid var(--color-success);color:var(--color-success)}.btn--outline:hover{background-color:var(--color-success);color:#fff}.btn--outline:active{transform:scale(.98)}.btn--success{background-color:var(--color-success);color:#fff;box-shadow:var(--shadow-xs),inset 0 1px 0 var(--alpha-highlight-medium)}.btn--success:hover{background-color:var(--color-success-dark);box-shadow:var(--shadow-sm),inset 0 1px 0 var(--alpha-highlight-medium)}.btn--success:active{background-color:var(--color-success-dark);transform:scale(.98)}.btn--small{padding:var(--space-4) var(--space-8);min-height:var(--control-h-sm);font-size:var(--font-size-xs)}.btn--sm{padding:var(--space-6) var(--space-12);min-height:var(--control-h-sm);font-size:var(--font-size-sm)}.btn--lg{padding:var(--space-12) var(--space-24);min-height:var(--control-h-lg);font-size:var(--font-size-lg)}.btn--full-width{width:100%}.btn:disabled{opacity:.6;cursor:not-allowed}.form-control{display:block;width:100%;padding:9px 12px;min-height:var(--control-h);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);transition:border-color var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis);font-family:var(--font-family-base);-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-control:hover{border-color:var(--color-border-strong)}.form-control:focus{outline:none;border-color:var(--color-action-bg);box-shadow:var(--ring-focus);background-color:var(--color-surface)}.form-control::placeholder{color:var(--color-text-tertiary)}textarea.form-control{resize:vertical;min-height:100px;line-height:var(--line-height-relaxed)}select.form-control{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2386868b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px}select.form-control:focus{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%233D5229' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:8px;letter-spacing:-.01em}.form-group{margin-bottom:20px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);overflow:hidden;transition:border-color var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis)}.card:hover{box-shadow:var(--shadow-sm);border-color:var(--color-border-strong)}.card__body{padding:var(--layout-card-pad)}.card__header{padding:var(--space-16) var(--layout-card-pad);border-bottom:1px solid var(--color-divider);background:var(--color-surface)}.card__footer{padding:var(--space-12) var(--layout-card-pad);border-top:1px solid var(--color-divider);background:var(--color-surface-secondary)}.status{display:inline-flex;align-items:center;padding:var(--space-4) var(--space-8);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-micro);line-height:var(--line-height-tight);font-variant-numeric:var(--font-numeric)}.status--success{background:rgba(var(--color-success-rgb),var(--status-bg-opacity));border:1px solid rgba(var(--color-success-rgb),var(--status-border-opacity));color:var(--color-success)}.status--error{background:rgba(var(--color-error-rgb),var(--status-bg-opacity));border:1px solid rgba(var(--color-error-rgb),var(--status-border-opacity));color:var(--color-error)}.status--warning{background:rgba(var(--color-warning-rgb),var(--status-bg-opacity));border:1px solid rgba(var(--color-warning-rgb),var(--status-border-opacity));color:var(--color-warning)}.status--info{background:rgba(var(--color-info-rgb),var(--status-bg-opacity));border:1px solid rgba(var(--color-info-rgb),var(--status-border-opacity));color:var(--color-info)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-card),1fr));gap:var(--layout-grid-gap);margin-bottom:var(--layout-section-gap)}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-20);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-12);transition:border-color var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-action-bg);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-fast) var(--ease-emphasis)}.kpi-card:hover{border-color:var(--color-border-strong);box-shadow:var(--ring-1),var(--shadow-sm)}.kpi-card:hover:before{transform:scaleX(1)}.kpi-icon{font-size:24px;line-height:1}.kpi-content{flex:1;width:100%}.kpi-value{font-family:var(--font-family-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0;line-height:1;letter-spacing:var(--tracking-display);font-variant-numeric:var(--font-numeric)}.kpi-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);margin:4px 0 0;letter-spacing:var(--tracking-small)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-xs)}.table th,.table td{padding:var(--space-8) var(--space-12);height:var(--enterprise-table-row-height);text-align:left;border-bottom:1px solid var(--color-border)}.table th{font-weight:var(--font-weight-semibold);background:var(--color-surface-secondary);color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:var(--tracking-caps)}.table td{font-variant-numeric:var(--font-numeric)}.table tbody tr{transition:background var(--duration-fast) var(--ease-emphasis)}.table tbody tr:hover{background:var(--color-surface-hover)}.table tbody tr:last-child td{border-bottom:none}.loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-background),rgba(var(--color-primary-rgb),.05))}.loading-spinner{text-align:center;animation:fadeIn var(--duration-normal) var(--ease-standard)}.loading-spinner .rmp-logo img{animation:pulse 1.5s infinite;filter:drop-shadow(0 4px 12px rgba(13,92,76,.2))}.loading-spinner .rmp-logo h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:0;animation:pulse 1.5s infinite;text-shadow:0 2px 4px rgba(var(--color-primary-rgb),.2)}.loading-spinner .rmp-logo p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:var(--space-8) 0 0 0;font-weight:500}.error-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-background);padding:var(--space-24);text-align:center}.error-container h1{color:var(--color-error);margin-bottom:var(--space-16)}.error-container p{color:var(--color-text-secondary);margin-bottom:var(--space-24)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:var(--space-4)}.gap-8{gap:var(--space-8)}.gap-16{gap:var(--space-16)}.m-0{margin:0}.mt-8{margin-top:var(--space-8)}.mb-8{margin-bottom:var(--space-8)}.mx-8{margin-left:var(--space-8);margin-right:var(--space-8)}.my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.p-0{padding:0}.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-16{padding-top:var(--space-16);padding-bottom:var(--space-16)}.px-16{padding-left:var(--space-16);padding-right:var(--space-16)}.block{display:block}.hidden{display:none}.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}:focus-visible{outline:var(--focus-outline);outline-offset:2px}.tab{padding:var(--space-12) var(--space-24);border:none;background:transparent;border-bottom:3px solid transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-base)}.tab:hover{color:var(--color-text);background:rgba(var(--color-primary-rgb),.05)}.tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1)}.btn--small{padding:var(--space-6) var(--space-12);font-size:var(--font-size-sm)}.section-with-tabs{display:flex;flex-direction:column;height:100%}.sub-tabs{display:flex;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-20);gap:1px;background:var(--color-surface)}.sub-tab{padding:var(--space-12) var(--space-20);border:none;background:transparent;border-bottom:3px solid transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);border-radius:var(--radius-base) var(--radius-base) 0 0}.sub-tab:hover{color:var(--color-text);background:rgba(var(--color-primary-rgb),.05)}.sub-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1);font-weight:var(--font-weight-semibold)}.operations-flow{padding:var(--space-20)}.flow-description{margin-bottom:var(--space-24);text-align:center}.flow-description h3{color:var(--color-primary);margin-bottom:var(--space-8)}.flow-description p{color:var(--color-text-secondary);font-size:var(--font-size-base)}.assignment-section{margin-bottom:var(--space-24);padding:var(--space-16);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.assignment-info{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-16)}.route-assignment-section{margin-bottom:var(--space-24)}.route-creation{background:var(--color-surface);padding:var(--space-20);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-bottom:var(--space-20)}.route-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-card),1fr));gap:var(--space-16);align-items:end}.route-assignment{background:var(--color-surface);padding:var(--space-20);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.assignment-table{margin-top:var(--space-16)}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:var(--space-16)}.spinner,.loading-spinner:empty,.loading-state .loading-spinner:empty{display:none!important}.modal-actions{padding:var(--space-16) var(--space-20);border-top:1px solid var(--color-border);display:flex;gap:var(--space-12);justify-content:flex-end}.modal-body label{display:block;margin-bottom:var(--space-6);font-weight:var(--font-weight-medium);color:var(--color-text)}.modal-body input,.modal-body select{width:100%;padding:var(--space-10) var(--space-12);margin-bottom:var(--space-16);border:2px solid var(--color-border);border-radius:var(--radius-base);background-color:var(--color-surface);color:var(--color-text);font-size:var(--font-size-base);transition:border-color var(--duration-fast) var(--ease-standard)}.modal-body input:focus,.modal-body select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}@media (max-width: 480px){.modal-overlay [class*=modal-content],.modal-backdrop [class*=modal-content],[class*=modal-overlay]>div:first-child{max-width:100%!important;width:100%!important;max-height:100vh!important;height:100vh!important;border-radius:0!important;margin:0!important}}@media (max-width: 768px){.table-responsive,[class*=table-container]{overflow-x:auto;-webkit-overflow-scrolling:touch}[class*=map-container],.leaflet-container,.maplibregl-map{min-height:200px;max-height:400px}}@keyframes rmp-fade-in{0%{opacity:0}to{opacity:1}}@keyframes rmp-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes rmp-fade-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes rmp-scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes rmp-slide-in-right{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}@keyframes rmp-sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes rmp-spin{to{transform:rotate(360deg)}}@keyframes rmp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes rmp-pulse-dot{0%,to{opacity:1}50%{opacity:.45}}@keyframes rmp-indeterminate{0%{transform:translate(-100%)}to{transform:translate(300%)}}@keyframes crono-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes crono-fadein{0%{opacity:0}to{opacity:1}}@keyframes crono-cell-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}@keyframes crono-item-in{to{opacity:1;transform:translate(0)}}@keyframes crono-pulse{0%{box-shadow:0 0 0 0 currentColor;opacity:1}70%{box-shadow:0 0 0 8px transparent;opacity:0}to{box-shadow:0 0 0 0 transparent;opacity:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.u-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--grid-min-card),1fr));gap:var(--layout-grid-gap)}.u-grid--micro{grid-template-columns:repeat(auto-fill,minmax(var(--grid-min-micro),1fr));gap:var(--space-8)}.u-grid--compact{grid-template-columns:repeat(auto-fill,minmax(var(--grid-min-compact),1fr));gap:var(--space-12)}.u-grid--wide{grid-template-columns:repeat(auto-fill,minmax(var(--grid-min-wide),1fr))}.u-grid--fit{grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-card),1fr))}.u-stack{display:flex;flex-direction:column;gap:var(--space-12)}.u-stack--tight{gap:var(--space-8)}.u-stack--loose{gap:var(--layout-section-gap)}.u-scroll-row{display:flex;gap:var(--space-8);overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.u-scroll-row::-webkit-scrollbar{display:none}.u-scroll-row>*{flex-shrink:0;scroll-snap-align:start}.u-enter{animation:rmp-fade-up var(--duration-normal) var(--ease-emphasis) both}.u-enter-scale{animation:rmp-scale-in var(--duration-normal) var(--ease-emphasis) both}.u-stagger>*{animation:rmp-fade-up var(--duration-normal) var(--ease-emphasis) both;animation-delay:calc(var(--i, 0) * var(--stagger-step))}.cleaning-assignments__grid>*,.fumigation-assignments__grid>*,.materials-grid-modern>*,.locations-grid>*,.photos-grid>*,.photo-grid>*,.cronograma-metrics>*,.kpi-summary-grid>*,.inventory-stats-modern>*,.plataforma-panel__grid>*{animation:rmp-fade-up var(--duration-normal) var(--ease-emphasis) both;animation-delay:calc(var(--i, 0) * var(--stagger-step))}.cleaning-assignments__grid>*:nth-child(1),.fumigation-assignments__grid>*:nth-child(1),.materials-grid-modern>*:nth-child(1),.locations-grid>*:nth-child(1),.photos-grid>*:nth-child(1),.photo-grid>*:nth-child(1),.cronograma-metrics>*:nth-child(1),.kpi-summary-grid>*:nth-child(1),.inventory-stats-modern>*:nth-child(1),.plataforma-panel__grid>*:nth-child(1){--i: 0}.cleaning-assignments__grid>*:nth-child(2),.fumigation-assignments__grid>*:nth-child(2),.materials-grid-modern>*:nth-child(2),.locations-grid>*:nth-child(2),.photos-grid>*:nth-child(2),.photo-grid>*:nth-child(2),.cronograma-metrics>*:nth-child(2),.kpi-summary-grid>*:nth-child(2),.inventory-stats-modern>*:nth-child(2),.plataforma-panel__grid>*:nth-child(2){--i: 1}.cleaning-assignments__grid>*:nth-child(3),.fumigation-assignments__grid>*:nth-child(3),.materials-grid-modern>*:nth-child(3),.locations-grid>*:nth-child(3),.photos-grid>*:nth-child(3),.photo-grid>*:nth-child(3),.cronograma-metrics>*:nth-child(3),.kpi-summary-grid>*:nth-child(3),.inventory-stats-modern>*:nth-child(3),.plataforma-panel__grid>*:nth-child(3){--i: 2}.cleaning-assignments__grid>*:nth-child(n+4),.fumigation-assignments__grid>*:nth-child(n+4),.materials-grid-modern>*:nth-child(n+4),.locations-grid>*:nth-child(n+4),.photos-grid>*:nth-child(n+4),.photo-grid>*:nth-child(n+4),.cronograma-metrics>*:nth-child(n+4),.kpi-summary-grid>*:nth-child(n+4),.inventory-stats-modern>*:nth-child(n+4),.plataforma-panel__grid>*:nth-child(n+4){--i: 3}.u-stagger>*:nth-child(1){--i: 0}.u-stagger>*:nth-child(2){--i: 1}.u-stagger>*:nth-child(3){--i: 2}.u-stagger>*:nth-child(4){--i: 3}.u-stagger>*:nth-child(5){--i: 4}.u-stagger>*:nth-child(6){--i: 5}.u-stagger>*:nth-child(7){--i: 6}.u-stagger>*:nth-child(n+8){--i: 7}.tab-panel{animation:rmp-fade-in var(--duration-normal) var(--ease-emphasis) both}.page-transition-enter{animation:rmp-fade-up var(--duration-normal) var(--ease-emphasis) both}.interactive{transition:border-color var(--duration-fast) var(--ease-emphasis),box-shadow var(--duration-fast) var(--ease-emphasis),transform var(--duration-fast) var(--ease-emphasis)}.interactive:hover{transform:translateY(-1px)}.interactive:active{transform:translateY(0)}.section-header{margin-bottom:var(--space-32);padding-bottom:var(--space-20);border-bottom:2px solid var(--color-border)}.section-title h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text);margin-bottom:var(--space-6)}.section-title p{color:var(--color-text-secondary);font-size:var(--font-size-base);margin:0}.personnel-dashboard{display:flex;flex-direction:column;gap:var(--space-32)}.shift-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-card),1fr));gap:var(--space-20)}.shift-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-24);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);position:relative;overflow:hidden}.shift-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.shift-card.morning:before{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.shift-card.afternoon:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.shift-card.night:before{background:linear-gradient(90deg,#6366f1,#4338ca)}.shift-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.shift-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-16)}.shift-header h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0}.shift-time{font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-secondary);padding:var(--space-4) var(--space-8);border-radius:var(--radius-sm);font-family:var(--font-family-mono)}.shift-stats{display:flex;gap:var(--space-24)}.stat{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-4)}.personnel-table-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.table-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-20) var(--space-24);border-bottom:1px solid var(--color-border);background:rgba(var(--color-primary-rgb),.02)}.table-header h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0}.btn-minimal{display:inline-flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-16);border:2px solid transparent;border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);text-decoration:none;background:transparent}.btn-minimal.primary{color:var(--color-primary);border-color:var(--color-primary)}.btn-minimal.primary:hover{background:var(--color-action-bg);color:#fff;transform:translateY(-1px)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);font-size:14px}.btn-icon:hover{background:rgba(var(--color-primary-rgb),.1);transform:scale(1.1)}.action-buttons{display:flex;gap:var(--space-4)}.personnel-table{overflow-x:auto}.minimal-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.minimal-table th{padding:var(--space-16) var(--space-24);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text);border-bottom:2px solid var(--color-border);background:transparent;font-size:var(--font-size-sm);text-transform:none;letter-spacing:normal}.minimal-table td{padding:var(--space-16) var(--space-24);border-bottom:1px solid var(--color-border);vertical-align:middle}.minimal-table tbody tr{transition:background-color var(--duration-fast) var(--ease-standard)}.minimal-table tbody tr:hover{background:rgba(var(--color-primary-rgb),.02)}.employee-info{display:flex;align-items:center;gap:var(--space-12)}.employee-avatar{width:40px;height:40px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.employee-name{font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.2}.employee-id{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-family:var(--font-family-mono)}.position-badge{display:inline-flex;padding:var(--space-4) var(--space-10);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.position-badge.driver{background:#22c55e1a;color:#059669;border:1px solid rgba(34,197,94,.2)}.position-badge.helper{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.2)}.status-badge{display:inline-flex;align-items:center;padding:var(--space-4) var(--space-10);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.status-badge.active{background:#22c55e1a;color:#059669;border:1px solid rgba(34,197,94,.2)}.status-badge.inactive{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.rating-input{display:flex;flex-direction:column;gap:var(--space-4);align-items:center}.rating-number{width:60px;padding:var(--space-6) var(--space-8);border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center;background:var(--color-surface);color:var(--color-text);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.rating-number:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.rating-stars{font-size:12px;color:#fbbf24}.stars{letter-spacing:1px}.minimal-select{padding:var(--space-8) var(--space-12);border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--select-caret-light);background-repeat:no-repeat;background-position:right var(--space-8) center;background-size:16px;padding-right:var(--space-32)}.minimal-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.minimal-select:hover{border-color:var(--color-primary)}.drag-drop-container{padding:var(--space-20) 0}.shifts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-wide),1fr));gap:var(--space-20)}.shift-zone{background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-lg);min-height:400px;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);position:relative;overflow:hidden}.shift-zone:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.shift-zone.unassigned{border-color:#94a3b8}.shift-zone.unassigned:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#94a3b8,#64748b)}.shift-zone.morning:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#fbbf24,#f59e0b)}.shift-zone.afternoon:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.shift-zone.night:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#6366f1,#4338ca)}.zone-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--space-20) var(--space-20) var(--space-16);border-bottom:1px solid var(--color-border);background:rgba(var(--color-primary-rgb),.02)}.zone-title h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-4) 0}.zone-count,.shift-time{font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-secondary);padding:var(--space-2) var(--space-8);border-radius:var(--radius-sm);font-family:var(--font-family-mono)}.zone-stats{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-4)}.employee-count{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-primary)}.average-rating{font-size:var(--font-size-sm);color:#fbbf24;font-weight:var(--font-weight-medium)}.employees-list{padding:var(--space-16);display:flex;flex-direction:column;gap:var(--space-12);flex:1}.employee-card{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12) var(--space-16);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);cursor:grab;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);-webkit-user-select:none;user-select:none}.employee-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.employee-card:active{cursor:grabbing;transform:scale(1.02);box-shadow:var(--shadow-lg)}.employee-card .employee-avatar{width:36px;height:36px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);flex-shrink:0}.employee-details{flex:1;min-width:0}.employee-card .employee-name{font-weight:var(--font-weight-medium);color:var(--color-text);line-height:1.2;margin-bottom:var(--space-4)}.employee-meta{display:flex;align-items:center;gap:var(--space-8);flex-wrap:wrap}.employee-card .position-badge{padding:var(--space-2) var(--space-6);font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.position-badge.conductor{background:#22c55e1a;color:#059669;border:1px solid rgba(34,197,94,.2)}.position-badge.ayudante{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.2)}.position-badge.supervisor{background:#a855f71a;color:#7c3aed;border:1px solid rgba(168,85,247,.2)}.rating-display{font-size:var(--font-size-xs);color:#fbbf24;font-weight:var(--font-weight-medium)}.empty-zone{display:flex;align-items:center;justify-content:center;min-height:120px;border:2px dashed var(--color-border);border-radius:var(--radius-base);margin:var(--space-16) 0}.empty-zone p{color:var(--color-text-secondary);font-style:italic;font-size:var(--font-size-sm)}.shift-zone.drag-over{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.05);border-style:solid}.employee-card.dragging{opacity:.5;transform:rotate(5deg)}.section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-32);padding-bottom:var(--space-20);border-bottom:2px solid var(--color-border)}.section-header .section-title{flex:1}.section-header .btn-minimal{flex-shrink:0;margin-left:var(--space-20)}.fleet-management{display:flex;flex-direction:column;gap:var(--space-24)}.fleet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-wide),1fr));gap:var(--space-20)}.vehicle-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.vehicle-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--color-primary)}.vehicle-header{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-16) var(--space-20);border-bottom:1px solid var(--color-border);background:rgba(var(--color-primary-rgb),.02)}.vehicle-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-primary-rgb),.1);border-radius:50%}.vehicle-info{flex:1}.vehicle-info h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-4) 0}.service-badge{font-size:var(--font-size-xs);padding:var(--space-2) var(--space-8);border-radius:var(--radius-full);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.service-badge.recoleccion{background:#22c55e1a;color:#059669}.service-badge.fumigacion{background:#f59e0b1a;color:#d97706}.status-indicator{font-size:var(--font-size-xs);padding:var(--space-4) var(--space-8);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium)}.status-indicator.disponible{background:#22c55e1a;color:#059669}.status-indicator.en-ruta{background:#3b82f61a;color:#2563eb}.status-indicator.mantenimiento{background:#ef44441a;color:#dc2626}.vehicle-assignments{padding:var(--space-20);display:flex;flex-direction:column;gap:var(--space-16)}.assignment-field{display:flex;flex-direction:column;gap:var(--space-6)}.assignment-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.assignment-select{padding:var(--space-10) var(--space-12);border:2px solid var(--color-border);border-radius:var(--radius-base);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.assignment-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.route-preview{padding:var(--space-12);background:rgba(var(--color-primary-rgb),.02);border-radius:var(--radius-base);border:1px solid var(--color-border)}.route-info{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8);margin-bottom:var(--space-12)}.route-detail{display:flex;flex-direction:column;align-items:center;text-align:center}.detail-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.detail-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.route-progress{height:6px;background:var(--color-border);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background:var(--gradient-primary);transition:width var(--duration-normal) var(--ease-standard)}.vehicle-actions{display:flex;gap:var(--space-8);padding:var(--space-16) var(--space-20);border-top:1px solid var(--color-border)}.action-btn{flex:1;padding:var(--space-8) var(--space-12);border:2px solid transparent;border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.action-btn.primary{background:var(--color-action-bg);color:var(--color-on-action)}.action-btn.primary:hover{background:var(--color-action-bg-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.action-btn.secondary{background:transparent;color:var(--color-action-bg);border-color:var(--color-action-bg)}.action-btn.secondary:hover{background:var(--color-action-bg);color:var(--color-on-action)}.action-btn.tertiary{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.action-btn.tertiary:hover{color:var(--color-text);border-color:var(--color-text-secondary)}.route-status-toggle{background:none;border:none;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.route-status-toggle.active{background:#22c55e1a;color:#22c55e}.route-status-toggle.inactive{background:#ef44441a;color:#ef4444}.route-status-toggle:hover{opacity:.8;transform:scale(1.05)}.assigned-route-info{margin-bottom:var(--space-12);padding:var(--space-12);background:rgba(var(--color-primary-rgb),.05);border-radius:var(--radius-md);border:1px solid rgba(var(--color-primary-rgb),.1)}.assigned-route-info h5{margin:0 0 var(--space-8) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.route-stops-mini{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.stop-mini{background:rgba(var(--color-text-rgb),.05);padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.fleet-list-container{display:flex;flex-direction:column;gap:var(--space-24)}.fleet-stats{display:flex;gap:var(--space-24);margin-bottom:var(--space-16)}.fleet-list{display:flex;flex-direction:column;gap:var(--space-16)}.fleet-list-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-20);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.fleet-list-item:hover{border-color:var(--color-primary);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.1)}.vehicle-main-info{display:flex;align-items:center;gap:var(--space-16);flex:1}.vehicle-indicator{position:relative;display:flex;align-items:center;justify-content:center}.vehicle-icon-large{font-size:32px}.status-dot{position:absolute;bottom:-4px;right:-4px;width:12px;height:12px;border-radius:50%;border:2px solid var(--color-surface)}.status-dot.en-ruta{background:#22c55e}.status-dot.disponible{background:#3b82f6}.status-dot.mantenimiento{background:#f59e0b}.vehicle-details-list{display:flex;flex-direction:column;gap:var(--space-12);flex:1}.vehicle-primary h4{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.vehicle-meta-list{display:flex;gap:var(--space-12);flex-wrap:wrap}.service-type-tag,.status-tag,.fuel-level{padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.service-type-tag.recoleccion{background:#22c55e1a;color:#22c55e}.service-type-tag.fumigacion{background:#f59e0b1a;color:#f59e0b}.status-tag.en-ruta{background:#22c55e1a;color:#22c55e}.status-tag.disponible{background:#3b82f61a;color:#3b82f6}.status-tag.mantenimiento{background:#f59e0b1a;color:#f59e0b}.fuel-level{background:rgba(var(--color-text-rgb),.1);color:var(--color-text-secondary)}.assignments-compact{display:flex;flex-direction:column;gap:var(--space-8);margin-top:var(--space-8)}.assignment-row{display:flex;align-items:center;gap:var(--space-12)}.assignment-row label{min-width:80px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.compact-select{flex:1;padding:var(--space-6) var(--space-12);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--font-size-sm);color:var(--color-text);max-width:200px}.compact-select:focus{outline:none;border-color:var(--color-primary)}.route-info-compact{padding:var(--space-8);background:rgba(var(--color-primary-rgb),.05);border-radius:var(--radius-sm);margin-top:var(--space-8)}.route-name-compact{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-primary);margin-bottom:var(--space-4)}.route-stops-compact{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.route-time-compact{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.fleet-actions{display:flex;gap:var(--space-8)}.fleet-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);font-size:16px}.fleet-action-btn.save:hover{background:#22c55e1a;color:#22c55e}.fleet-action-btn.location:hover{background:#dc26261a;color:#dc2626;transform:scale(1.1)}.fleet-action-btn.map:hover{background:#3b82f61a;color:#3b82f6}.empty-fleet{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-64);text-align:center;color:var(--color-text-secondary)}.empty-fleet .empty-icon{font-size:48px;margin-bottom:var(--space-16)}.empty-fleet h4{margin:0 0 var(--space-8) 0;color:var(--color-text)}.empty-fleet p{margin:0;font-size:var(--font-size-sm)}.vehicles-assigned{background:rgba(var(--color-primary-rgb),.1);color:var(--color-primary);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.action-btn-list{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);font-size:14px}.action-btn-list.edit:hover{background:#3b82f61a;color:#3b82f6}.action-btn-list.map:hover{background:#22c55e1a;color:#22c55e}.action-btn-list.duplicate:hover{background:#f59e0b1a;color:#f59e0b}.action-btn-list.delete:hover{background:#ef44441a;color:#ef4444}.routes-management{display:flex;flex-direction:column;gap:var(--space-32)}.routes-overview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-20)}.overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-card),1fr));gap:var(--space-16)}.stat-card{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-16);background:rgba(var(--color-primary-rgb),.02);border:1px solid rgba(var(--color-primary-rgb),.1);border-radius:var(--radius-base)}.stat-icon{font-size:24px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-primary-rgb),.1);border-radius:50%}.stat-info{display:flex;flex-direction:column}.stat-number{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);line-height:1}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.routes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-wide),1fr));gap:var(--space-20)}.route-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.route-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.route-header{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-16) var(--space-20);border-bottom:1px solid var(--color-border)}.route-color{width:4px;height:32px;border-radius:var(--radius-sm)}.route-info{flex:1}.route-info h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-4) 0}.route-menu{display:flex;align-items:center}.menu-btn{width:32px;height:32px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.menu-btn:hover{background:rgba(var(--color-primary-rgb),.1);color:var(--color-text)}.route-details{padding:var(--space-20)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-16);margin-bottom:var(--space-20)}.detail-item{display:flex;align-items:center;gap:var(--space-10)}.detail-icon{font-size:16px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-primary-rgb),.1);border-radius:50%;flex-shrink:0}.detail-content{display:flex;flex-direction:column}.preview-map{background:rgba(var(--color-border),.3);border-radius:var(--radius-base);height:120px;display:flex;align-items:center;justify-content:center;border:2px dashed var(--color-border)}.map-placeholder{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.route-actions{display:flex;gap:var(--space-8);padding:var(--space-16) var(--space-20);border-top:1px solid var(--color-border)}.route-templates{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-24)}.templates-header{margin-bottom:var(--space-20);text-align:center}.templates-header h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-8) 0}.templates-header p{color:var(--color-text-secondary);margin:0}.templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-card),1fr));gap:var(--space-16)}.template-card{display:flex;align-items:center;gap:var(--space-16);padding:var(--space-16);background:rgba(var(--color-primary-rgb),.02);border:1px solid rgba(var(--color-primary-rgb),.1);border-radius:var(--radius-base);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.template-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.template-icon{font-size:24px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-primary-rgb),.1);border-radius:50%;flex-shrink:0}.template-info{flex:1}.template-info h5{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-4) 0}.template-info p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.template-btn{padding:var(--space-6) var(--space-12);border:2px solid var(--color-primary);border-radius:var(--radius-base);background:transparent;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);flex-shrink:0}.template-btn:hover{background:var(--color-action-bg);color:#fff}.route-creator{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-24);overflow:hidden}.creator-header{padding:var(--space-20) var(--space-24);border-bottom:1px solid var(--color-border);background:rgba(var(--color-primary-rgb),.02)}.creator-header h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-6) 0}.creator-header p{color:var(--color-text-secondary);margin:0;font-size:var(--font-size-sm)}.creator-form{padding:var(--space-24)}.form-row{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-16);margin-bottom:var(--space-24)}.form-field{display:flex;flex-direction:column;gap:var(--space-6)}.form-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.route-name-input,.route-type-select{padding:var(--space-12) var(--space-16);border:2px solid var(--color-border);border-radius:var(--radius-base);font-size:var(--font-size-base);background:var(--color-surface);color:var(--color-text);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.route-name-input:focus,.route-type-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.stops-section{margin-bottom:var(--space-24)}.stops-header{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-16)}.stops-header label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.stops-info{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.stops-list{display:flex;flex-direction:column;gap:var(--space-8);margin-bottom:var(--space-16)}.stop-item{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-12);background:rgba(var(--color-primary-rgb),.02);border:1px solid var(--color-border);border-radius:var(--radius-base)}.stop-number{width:28px;height:28px;background:var(--color-action-bg);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0}.stop-input{flex:1;padding:var(--space-8) var(--space-12);border:1px solid var(--color-border);border-radius:var(--radius-base);font-size:var(--font-size-sm);background:var(--color-surface);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.stop-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.1)}.remove-stop-btn{width:28px;height:28px;border:none;background:rgba(var(--color-error-rgb),.1);color:var(--color-error);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);flex-shrink:0}.remove-stop-btn:hover{background:var(--color-error);color:#fff}.add-stop-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-8);padding:var(--space-12) var(--space-16);border:2px dashed var(--color-border);border-radius:var(--radius-base);background:transparent;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);width:100%}.add-stop-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:rgba(var(--color-primary-rgb),.02)}.creator-actions{display:flex;gap:var(--space-12);justify-content:flex-end}.cancel-btn,.save-route-btn{padding:var(--space-10) var(--space-20);border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);border:2px solid transparent}.cancel-btn{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-secondary)}.save-route-btn{background:var(--color-action-bg);color:#fff;border-color:var(--color-primary)}.save-route-btn:hover:not(:disabled){background:var(--color-action-bg-hover);transform:translateY(-1px)}.save-route-btn:disabled{opacity:.5;cursor:not-allowed}.routes-list-container{display:flex;flex-direction:column;gap:var(--space-20)}.routes-stats{display:flex;gap:var(--space-16);padding:var(--space-16);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base)}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1}.stat-item .stat-icon{font-size:20px;margin-bottom:var(--space-4)}.stat-item .stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);line-height:1}.stat-item .stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.routes-list{display:flex;flex-direction:column;gap:var(--space-12)}.route-list-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-16) var(--space-20);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.route-list-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.route-main-info{display:flex;align-items:center;gap:var(--space-16);flex:1}.route-indicator{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);flex-shrink:0}.route-color-dot{width:12px;height:12px;border-radius:50%}.route-type-icon{font-size:18px}.route-details-list{flex:1;min-width:0}.route-name-section{margin-bottom:var(--space-8)}.route-name-section h4{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0 0 var(--space-4) 0}.route-meta{display:flex;align-items:center;gap:var(--space-12)}.route-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.route-status.active{color:var(--color-success)}.route-status.inactive{color:var(--color-text-secondary)}.route-service-type{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.route-stops-preview{display:flex;flex-direction:column;gap:var(--space-4)}.stops-header-info{display:flex;align-items:center;gap:var(--space-12)}.stops-count,.route-time{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.stops-preview-list{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stop-preview{color:var(--color-text-secondary)}.route-actions-list{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.action-btn-list{width:32px;height:32px;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);font-size:14px}.action-btn-list.edit{background:#3b82f61a;color:#2563eb}.action-btn-list.edit:hover{background:#2563eb;color:#fff}.action-btn-list.map{background:#22c55e1a;color:#059669}.action-btn-list.map:hover{background:#059669;color:#fff}.action-btn-list.duplicate{background:#a855f71a;color:#7c3aed}.action-btn-list.duplicate:hover{background:#7c3aed;color:#fff}.action-btn-list.delete{background:#ef44441a;color:#dc2626}.action-btn-list.delete:hover{background:#dc2626;color:#fff}.empty-routes{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-32);text-align:center;background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-lg)}.empty-icon{font-size:48px;margin-bottom:var(--space-16);opacity:.5}.empty-routes h4{font-size:var(--font-size-lg);color:var(--color-text);margin:0 0 var(--space-8) 0}.empty-routes p{color:var(--color-text-secondary);margin:0}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.routes-stats{flex-direction:column}.route-main-info{flex-direction:column;align-items:flex-start;gap:var(--space-12)}.route-actions-list{flex-direction:column;gap:var(--space-2)}}.historical-only-banner{display:flex;align-items:center;gap:var(--space-8);margin:var(--space-12) var(--space-20);padding:var(--space-8) var(--space-12);background:var(--historical-banner-bg);color:var(--historical-banner-fg);border:1px solid var(--historical-banner-border);border-radius:var(--radius-base);font-size:var(--font-size-sm);line-height:1.4}.historical-only-banner strong{font-weight:var(--font-weight-semibold, 600)}.historical-only-banner svg{flex-shrink:0}.app-subtabs{display:flex;gap:var(--space-4);padding:var(--space-10) var(--space-20) 0;border-bottom:1px solid var(--color-border);background:var(--color-background);flex-shrink:0;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.app-subtabs::-webkit-scrollbar{display:none}.app-subtab{position:relative;display:inline-flex;align-items:center;gap:var(--space-6);flex-shrink:0;scroll-snap-align:start;padding:6px 14px 8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-small);color:var(--color-text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--duration-fast) var(--ease-emphasis);white-space:nowrap;font-family:var(--font-family-base)}.app-subtab:after{content:"";position:absolute;left:var(--space-12);right:var(--space-12);bottom:0;height:2px;background:var(--color-action-bg);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform var(--duration-fast) var(--ease-emphasis)}.app-subtab svg{flex-shrink:0;display:inline-block;vertical-align:middle}.app-subtab:hover:not(:disabled){color:var(--color-text)}.app-subtab--active{color:var(--color-action-bg);font-weight:var(--font-weight-semibold)}.app-subtab--active:after{transform:scaleX(1)}.app-subtab--active svg{color:var(--color-action-bg)}.app-subtab--locked{opacity:.5;cursor:not-allowed}.core-group,.inv-group{display:flex;flex-direction:column;min-height:100%;height:100%}.core-group__content{flex:1;min-height:0;display:flex;flex-direction:column}.inv-group>:not(.app-subtabs){flex:1;min-height:0;overflow-y:auto;padding:var(--space-16) var(--space-24)}.main-content:has(>.core-group),.main-content:has(>.operations-section),.main-content:has(>.inv-group){padding:0;display:flex;flex-direction:column;overflow:hidden}html .loading-spinner-large,html .completion-spinner,html .spinner-small,html .facial-spinner,html .photo-sync-spinner{border:0!important;border-radius:50%!important;background:conic-gradient(from 90deg,transparent 0deg,currentColor 300deg)!important;-webkit-mask:radial-gradient(farthest-side,transparent 82%,#000 0);mask:radial-gradient(farthest-side,transparent 82%,#000 0);animation:rmp-spin .72s linear infinite!important}html .loading-spinner-large,html .facial-spinner{color:var(--color-text-tertiary)}@media (prefers-reduced-motion: reduce){html .loading-spinner-large,html .completion-spinner,html .spinner-small,html .facial-spinner,html .photo-sync-spinner{animation-duration:1.6s!important}}html .fac__cargando,html .mrm-loading,html .frm-loading,html .pres-loading,html .diagram-loading,html .rrp-loading,html .risk-loading,html .schedule-loading,html .inventory-loading,html .lrm-map__loading,html .frm-map__loading,html .rrm-map__loading,html .risk-map__loading{display:flex;align-items:center;justify-content:center;gap:var(--space-8);color:var(--color-text-tertiary);font-size:var(--font-size-sm);letter-spacing:var(--tracking-small);animation:rmp-fade-in var(--duration-fast) var(--ease-emphasis) both}html .fac__cargando:before,html .mrm-loading:before,html .frm-loading:before,html .pres-loading:before,html .diagram-loading:before,html .rrp-loading:before,html .risk-loading:before,html .schedule-loading:before,html .inventory-loading:before{content:"";flex-shrink:0;width:16px;height:16px;border-radius:50%;background:conic-gradient(from 90deg,transparent 0deg,currentColor 300deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 0);mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 0);animation:rmp-spin .72s linear infinite}html .spin{animation:rmp-spin .72s linear infinite}@media (max-width: 1024px){html,body,#root{overflow-x:hidden;max-width:100vw}}@media (max-width: 480px){.modal-overlay,.modal-overlay-v2,.modal-backdrop,.cleaning-modal-overlay,.fumigation-modal-overlay,.route-modal-overlay,.weight-modal-overlay,.schedule-modal-overlay,.gps-playback-modal-overlay,.report-modal-overlay,.photos-modal-overlay,.item-detail-modal-overlay,.maintenance-task-modal-overlay,.route-completion-overlay,.location-modal-overlay,.location-reports-overlay{padding:0!important;align-items:flex-end!important}.modal-content,.modal-content-v2,.modal-container,.cleaning-modal,.fumigation-modal,.route-modal,.weight-modal,.schedule-modal,.gps-playback-modal,.report-modal,.photos-modal,.item-detail-modal,.maintenance-task-modal,.route-completion-modal,.location-map-modal,.location-reports-modal{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important;margin:0!important;border-radius:0!important;display:flex!important;flex-direction:column!important}.modal-body,.modal-content>.modal-form,.modal-content-v2>.modal-form-v2{flex:1 1 auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;min-height:0!important}.modal-actions,.modal-actions-v2,.modal-footer,.form-actions{flex-direction:column-reverse!important;gap:8px!important;padding:12px!important}.modal-actions>button,.modal-actions-v2>button,.modal-footer>button,.form-actions>button{width:100%!important;min-height:44px!important;justify-content:center!important}.form-row,.form-row-v2,.form-grid{grid-template-columns:1fr!important;gap:12px!important}}@media (max-width: 768px){.data-table-wrapper,.table-wrapper,.personnel-table-wrapper,.fleet-table-wrapper,.inventory-table-wrapper,.reports-table-wrapper{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;max-width:100%}.admin-content table:not(.no-scroll),.component-container table:not(.no-scroll){display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}}@media (max-width: 768px){button:not(.icon-btn-sm):not(.tag-close):not(.close-small),a.btn,.btn,.button,[role=button]{min-height:44px}.icon-btn,.btn-icon,.close-btn,.edit-btn,.delete-btn{min-width:44px;min-height:44px}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:44px;font-size:16px}}@media (max-width: 1024px){.grid-3,.grid-4,.cards-grid-3,.cards-grid-4{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4,.cards-grid,.cards-grid-2,.cards-grid-3,.cards-grid-4,.stats-grid,.kpi-grid,.filters-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}}@media (max-width: 480px){.grid-2,.grid-3,.grid-4,.cards-grid,.cards-grid-2,.cards-grid-3,.cards-grid-4,.stats-grid,.filters-grid,.vehicle-grid,.routes-grid{grid-template-columns:1fr!important}.kpi-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.filters-bar,.ops-filters,.ops-filters-modern,.search-filters,.toolbar-filters{flex-direction:column!important;align-items:stretch!important;gap:8px!important}.filter-group,.search-input-wrapper{width:100%!important}.filter-chip,.filter-btn{width:100%!important;justify-content:center!important}}@media (max-width: 768px){.component-header,.page-header,.section-header,.ops-header{flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:12px!important}.component-header>h1,.component-header>h2,.page-header>h1,.section-header>h2{font-size:20px!important}.header-actions,.component-header-actions{width:100%!important;flex-wrap:wrap!important}.header-actions>button{flex:1 1 auto}}@media (max-width: 768px){.tabs-container,.sub-tabs,.sub-nav,.inner-tabs{overflow-x:auto!important;-webkit-overflow-scrolling:touch;flex-wrap:nowrap!important;scrollbar-width:none}.tabs-container::-webkit-scrollbar,.sub-tabs::-webkit-scrollbar,.sub-nav::-webkit-scrollbar,.inner-tabs::-webkit-scrollbar{display:none}.tab,.sub-tab{white-space:nowrap!important;flex-shrink:0!important}}@media (max-width: 480px){.admin-content,.component-container,.page-container,.section-container,.card-container{padding:8px!important}.card,.panel,.widget{padding:12px!important;border-radius:6px!important}}@media (max-width: 480px){h1{font-size:22px!important}h2{font-size:19px!important}h3{font-size:17px!important}h4{font-size:15px!important}.section-title h3{font-size:18px!important}.widget-title{font-size:15px!important}}@media (max-width: 768px){img,video,canvas,svg{max-width:100%;height:auto}.maplibregl-canvas,.leaflet-container canvas{max-width:none;width:100%!important}}@supports (padding: env(safe-area-inset-bottom)){.app-bar,.top-nav,.bottom-sheet{padding-bottom:env(safe-area-inset-bottom,0)}}
