body,html,#root{height:100%;margin:0;padding:0;font-family:var(--font-primary);background:linear-gradient(135deg,var(--light-gray) 0%,var(--secondary-sage-light) 50%,var(--secondary-sage) 100%)}.page-loader-spinner{animation:spin 1s linear infinite}.vortex-app-wrapper{min-height:100vh;width:100vw;display:flex;flex-direction:column}.vortex-header{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 50%,var(--primary-teal-light) 100%);border-bottom:4px solid var(--accent-orange);color:var(--white);display:flex;align-items:center;justify-content:space-between;padding:0 48px 0 32px;height:64px;font-family:var(--font-primary);box-shadow:0 2px 8px var(--overlay-medium);position:fixed;top:0;left:0;width:100vw;z-index:100;box-sizing:border-box;max-width:100vw;background-image:url('data:image/svg+xml;utf8,<svg width="400" height="64" viewBox="0 0 400 64" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 48 Q 100 68 200 48 T 400 48" stroke="%23f05a24" stroke-width="2" fill="none" opacity="0.3"/><path d="M0 24 Q 100 4 200 24 T 400 24" stroke="%23f05a24" stroke-width="2" fill="none" opacity="0.2"/></svg>');background-repeat:repeat-x;background-size:auto 64px;margin-bottom:0}.vortex-logo{font-size:2.2rem;margin-right:16px;color:var(--accent-orange);font-weight:900;letter-spacing:2px}.vortex-header h1{font-size:1.6rem;font-weight:600;letter-spacing:1px}.vortex-content{flex:1 1 auto;display:flex;height:100vh;min-height:0}.vortex-main{flex:1 1 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;height:calc(100vh - 104px);min-height:0;padding:0;margin-left:0;margin-top:64px}.leaflet-container{height:100%!important;width:100%!important;border-radius:12px;box-shadow:0 4px 20px var(--overlay-medium)}.vortex-info{margin-top:18px;background:linear-gradient(135deg,var(--white) 0%,var(--secondary-sage-light) 100%);padding:12px 24px;border-radius:8px;color:var(--primary-teal-dark);font-size:1rem;box-shadow:0 2px 8px var(--overlay-light);max-width:1200px;margin-left:auto;margin-right:auto;border-left:4px solid var(--accent-orange)}.custom-marker{background:transparent!important;border:none!important}@keyframes loadingPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.loading-dot{animation:loadingPulse 1.5s infinite;display:inline-block}.oil-field-popup{min-width:260px;max-width:320px;background:var(--overlay-dark);border:2px solid var(--accent-orange);border-radius:12px;color:var(--white);font-family:var(--font-primary);box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;transition:all .3s ease;z-index:1000000!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important}.oil-field-popup:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0006}.oil-field-popup h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--accent-orange)}.oil-field-popup p{margin:4px 0;font-size:12px;line-height:1.4}.oil-field-popup strong{color:var(--secondary-sage-light)}.point-label-tag{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 100%);color:var(--white);padding:4px 10px;border-radius:5px;font-size:11px;font-weight:500;white-space:nowrap;box-shadow:0 2px 6px #00242f40,0 1px 3px #00242f26;border:1px solid var(--accent-orange);border-width:1px 1px 2px 1px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease;-webkit-user-select:none;user-select:none;font-family:var(--font-primary);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.point-label-tag:hover{background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-light) 100%);box-shadow:0 3px 8px #00242f4d,0 2px 4px #00242f33;border-color:var(--accent-orange);border-width:1px 1px 2px 1px;transform:translate(-50%) translateY(-1px)}.point-label-tag:active{transform:translate(-50%) translateY(0);box-shadow:0 2px 4px #00242f33}.leaflet-popup{z-index:999999!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.leaflet-popup-content-wrapper{z-index:999999!important;pointer-events:auto!important;background:var(--overlay-dark)!important;border:2px solid var(--accent-orange)!important;border-radius:12px!important;box-shadow:0 8px 32px #0000004d!important}.leaflet-popup-content{z-index:999999!important;pointer-events:auto!important;margin:0!important;padding:0!important}.leaflet-popup-close-button{z-index:1000000!important;color:var(--accent-orange)!important;background:#ffffffe6!important;border-radius:50%!important;width:24px!important;height:24px!important;line-height:24px!important;text-align:center!important;font-size:16px!important;font-weight:700!important}.vortex-capture-panel{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:1000;background:var(--overlay-dark);padding:8px 16px;border-radius:8px;color:var(--white)}.vortex-capture-panel button{background:var(--accent-orange);color:var(--white);border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:14px}.vortex-capture-msg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--overlay-dark);color:var(--white);padding:12px 24px;border-radius:8px;z-index:1000;font-size:14px}@media(max-width:800px){.vortex-header{height:56px;background-size:auto 56px}.vortex-content{height:calc(100vh - 56px)}.vortex-main{height:calc(100vh - 96px);margin-top:56px}.vortex-map{height:calc(100vh - 96px)}}@media(max-width:768px){.vortex-header{height:52px;background-size:auto 52px}.vortex-logo{font-size:1.8rem}.vortex-header h1{font-size:1.2rem}.vortex-main{height:calc(100vh - 92px);margin-top:52px}}@media(max-width:600px){.vortex-header{height:46px;background-size:auto 46px}.vortex-logo{font-size:1.4rem}.vortex-header h1{font-size:1rem}.vortex-main{height:calc(100vh - 86px);margin-top:46px}}@media(max-width:480px){.vortex-header{height:40px;background-size:auto 40px}.vortex-logo{font-size:1.2rem}.vortex-header h1{font-size:.9rem}.vortex-main{height:calc(100vh - 80px);margin-top:40px}.vortex-content{height:calc(100vh - 40px)}}.cache-stats-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cache-stats-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:90vw;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s ease-out}.cache-stats-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 100%);color:var(--white);border-bottom:3px solid var(--accent-orange)}.cache-stats-modal-header h3{margin:0;font-size:18px;font-weight:600}.cache-stats-close-btn{background:none;border:none;color:var(--white);font-size:20px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .3s ease}.cache-stats-close-btn:hover{background:#ffffff1a}@media(max-width:768px){.cache-stats-modal{max-width:95vw;max-height:95vh}.cache-stats-modal-header{padding:16px 20px}.cache-stats-modal-header h3{font-size:16px}}.btn{font-family:var(--font-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);line-height:var(--line-height-normal);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:none;border-radius:var(--rounded-base);cursor:pointer;outline:none;white-space:nowrap;padding:0;transition:all var(--duration-base) var(--easing-in-out);-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs);line-height:var(--line-height-tight);min-height:32px;min-width:32px}.btn-base{padding:var(--space-3) var(--space-6);font-size:var(--font-size-sm);line-height:var(--line-height-normal);min-height:40px;min-width:40px}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-base);line-height:var(--line-height-normal);min-height:48px;min-width:48px}.btn-primary{background-color:var(--primary-teal, #00242f);color:var(--white, #ffffff);box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));border:2px solid transparent}.btn-primary:hover:not(:disabled){background-color:var(--primary-teal-dark, #00141a);box-shadow:var(--shadow-md, 0 4px 12px 0 rgba(0, 0, 0, .15));transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));transform:translateY(0)}.btn-primary:focus-visible{box-shadow:var(--shadow-md, 0 4px 12px 0 rgba(0, 0, 0, .15)),0 0 0 3px var(--primary-teal-alpha-20, rgba(0, 36, 47, .2))}.btn-secondary{background-color:var(--white, #ffffff);color:var(--primary-teal, #00242f);border:2px solid var(--primary-teal, #00242f);box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.btn-secondary:hover:not(:disabled){background-color:var(--primary-teal-alpha-10, rgba(0, 36, 47, .1));border-color:var(--primary-teal-dark, #00141a);box-shadow:var(--shadow-md, 0 4px 12px 0 rgba(0, 0, 0, .15));transform:translateY(-1px)}.btn-secondary:active:not(:disabled){background-color:var(--primary-teal-alpha-20, rgba(0, 36, 47, .2));transform:translateY(0)}.btn-secondary:focus-visible{box-shadow:var(--shadow-md, 0 4px 12px 0 rgba(0, 0, 0, .15)),0 0 0 3px var(--primary-teal-alpha-20, rgba(0, 36, 47, .2))}.btn-ghost{background-color:transparent;color:var(--primary-teal, #00242f);border:1px solid transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background-color:var(--primary-teal-alpha-10, rgba(0, 36, 47, .1));border-color:var(--primary-teal-alpha-20, rgba(0, 36, 47, .2))}.btn-ghost:active:not(:disabled){background-color:var(--primary-teal-alpha-15, rgba(0, 36, 47, .15))}.btn-ghost:focus-visible{box-shadow:0 0 0 3px var(--primary-teal-alpha-20, rgba(0, 36, 47, .2))}.btn-danger{background-color:var(--error, #dc3545);color:var(--white, #ffffff);box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));border:2px solid transparent}.btn-danger:hover:not(:disabled){background-color:#c82333;box-shadow:var(--shadow-md, 0 4px 12px 0 rgba(0, 0, 0, .15));transform:translateY(-1px)}.btn-danger:active:not(:disabled){box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));transform:translateY(0)}.btn-danger:focus-visible{box-shadow:var(--shadow-md, 0 4px 12px 0 rgba(0, 0, 0, .15)),0 0 0 3px #dc354533}.btn:disabled,.btn-disabled{opacity:.5;cursor:not-allowed;transform:none!important;pointer-events:none}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:var(--rounded-full);animation:btn-spin var(--duration-slow) linear infinite;flex-shrink:0;margin-right:var(--space-1)}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-text{display:inline-block;flex:1;text-align:center}.btn:focus-visible{outline:2px solid var(--primary-teal, #00242f);outline-offset:2px}.btn:focus{outline:none}@media(hover:none){.btn:hover:not(:disabled){transform:none}}@media(max-width:640px){.btn-base,.btn-sm{min-height:44px;min-width:44px}.btn{font-size:16px}}.btn-full{width:100%}.btn-icon{padding:var(--space-2, .5rem);min-width:auto}@media(prefers-color-scheme:dark){.btn-secondary{background-color:#1a1a1a;border-color:var(--primary-teal, #00242f);color:#f0f0f0}.btn-secondary:hover:not(:disabled){background-color:#2a2a2a}.btn-ghost{color:#f0f0f0}.btn-ghost:hover:not(:disabled){background-color:#ffffff1a}}@media(prefers-reduced-motion:reduce){.btn,.btn-spinner{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.icon-btn{font-family:var(--font-primary);font-size:var(--font-size-lg);display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--rounded-base);cursor:pointer;outline:none;transition:all var(--duration-base) var(--easing-in-out);-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased}.icon-btn-sm{width:28px;height:28px;font-size:var(--font-size-sm)}.icon-btn-base{width:36px;height:36px;font-size:var(--font-size-lg)}.icon-btn-lg{width:44px;height:44px;font-size:var(--font-size-xl)}.icon-btn-ghost{background-color:transparent;color:var(--text-primary, #1a1a1a)}.icon-btn-ghost:hover:not(:disabled){background-color:#00242f1a}.icon-btn-ghost:active:not(:disabled){background-color:#00242f26}.icon-btn-primary{background-color:var(--primary-teal);color:var(--white);box-shadow:var(--shadow-sm)}.icon-btn-primary:hover:not(:disabled){background-color:#00141a;box-shadow:var(--shadow-md)}.icon-btn-secondary{background-color:var(--white);color:var(--primary-teal);border:1px solid var(--primary-teal)}.icon-btn-secondary:hover:not(:disabled){background-color:#00242f0d}.icon-btn-danger{background-color:transparent;color:var(--error, #dc3545)}.icon-btn-danger:hover:not(:disabled){background-color:#dc35451a}.icon-btn:disabled,.icon-btn-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.icon-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:var(--rounded-full);animation:icon-btn-spin var(--duration-slow) linear infinite}@keyframes icon-btn-spin{to{transform:rotate(360deg)}}.icon-btn:focus-visible{outline:2px solid var(--primary-teal);outline-offset:2px}@media(prefers-contrast:more){.icon-btn{border-width:2px}}.input-wrapper{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.input-label{font-family:var(--font-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);line-height:var(--line-height-tight)}.input-required{color:var(--error, #dc3545);margin-left:var(--space-1);font-weight:var(--font-weight-bold)}.input{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);display:block;width:100%;border:1px solid var(--border-color, #d0d9e0);border-radius:var(--rounded-base);background-color:var(--white, #ffffff);color:var(--text-primary, #1a1a1a);transition:all var(--duration-base) var(--easing-in-out);cursor:text;-webkit-font-smoothing:antialiased}.input-sm{padding:var(--space-2) var(--space-3);min-height:32px;font-size:var(--font-size-xs)}.input-base{padding:var(--space-3) var(--space-4);min-height:40px;font-size:var(--font-size-base)}.input-lg{padding:var(--space-4) var(--space-5);min-height:48px;font-size:var(--font-size-lg)}.input:hover:not(:disabled){border-color:var(--primary-teal, #00242f);box-shadow:var(--shadow-sm)}.input:focus{outline:none;border-color:var(--primary-teal, #00242f);box-shadow:var(--shadow-base),0 0 0 3px #00242f1a}.input:disabled{background-color:var(--bg-disabled, #f5f5f5);border-color:var(--border-disabled, #d0d9e0);color:var(--text-disabled, #999999);cursor:not-allowed;opacity:.6}.input:disabled::placeholder{color:var(--text-disabled, #999999)}.input-error{border-color:var(--error, #dc3545);background-color:var(--error-bg, rgba(220, 53, 69, .05))}.input-error:focus{border-color:var(--error, #dc3545);box-shadow:var(--shadow-base),0 0 0 3px #dc35451a}.input::placeholder{color:var(--text-muted, #999999);font-size:inherit}.input-helper-text{font-family:var(--font-primary);font-size:var(--font-size-xs);color:var(--text-muted, #999999);line-height:var(--line-height-tight);margin-top:var(--space-1)}.input-error-text{font-family:var(--font-primary);font-size:var(--font-size-xs);color:var(--error, #dc3545);line-height:var(--line-height-tight);margin-top:var(--space-1);font-weight:var(--font-weight-medium)}.input:focus-visible{outline:2px solid var(--primary-teal, #00242f);outline-offset:2px}@media(prefers-contrast:more){.input,.input-error{border-width:2px}}@media(prefers-color-scheme:dark){.input{background-color:#1a1a1a;border-color:#333;color:#fff}.input::placeholder{color:#666}.input:disabled{background-color:#0d0d0d;border-color:#333;color:#666}}.select-wrapper{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.select-label{font-family:var(--font-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);line-height:var(--line-height-tight)}.select-required{color:var(--error, #dc3545);margin-left:var(--space-1);font-weight:var(--font-weight-bold)}.select-container{position:relative;width:100%;font-family:var(--font-primary)}.select-sm{font-size:var(--font-size-xs)}.select-base{font-size:var(--font-size-base)}.select-lg{font-size:var(--font-size-lg)}.select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);border:1px solid var(--border-color, #d0d9e0);border-radius:var(--rounded-base);background-color:var(--white, #ffffff);color:var(--text-primary, #1a1a1a);font-family:var(--font-primary);font-size:inherit;line-height:var(--line-height-normal);transition:all var(--duration-base) var(--easing-in-out);cursor:pointer;-webkit-font-smoothing:antialiased;text-align:left}.select-sm .select-trigger{padding:var(--space-2) var(--space-3);min-height:32px}.select-base .select-trigger{padding:var(--space-3) var(--space-4);min-height:40px}.select-lg .select-trigger{padding:var(--space-4) var(--space-5);min-height:48px}.select-container:hover:not(:disabled) .select-trigger:not(:disabled){border-color:var(--primary-teal, #00242f);box-shadow:var(--shadow-sm)}.select-trigger:focus{outline:none;border-color:var(--primary-teal, #00242f);box-shadow:var(--shadow-base),0 0 0 3px #00242f1a}.select-open .select-trigger{border-color:var(--primary-teal, #00242f);border-radius:var(--rounded-base) var(--rounded-base) 0 0;background-color:var(--white, #ffffff)}.select-open .select-arrow{transform:rotate(180deg)}.select-trigger:disabled{background-color:var(--bg-disabled, #f5f5f5);border-color:var(--border-disabled, #d0d9e0);color:var(--text-disabled, #999999);cursor:not-allowed;opacity:.6}.select-error .select-trigger{border-color:var(--error, #dc3545);background-color:var(--error-bg, rgba(220, 53, 69, .05))}.select-error .select-trigger:focus{border-color:var(--error, #dc3545);box-shadow:var(--shadow-base),0 0 0 3px #dc35451a}.select-arrow{width:20px;height:20px;flex-shrink:0;color:var(--text-muted, #999999);transition:transform var(--duration-base) var(--easing-in-out)}.select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-placeholder{color:var(--text-muted, #999999)}.select-menu{position:absolute;top:100%;left:0;right:0;z-index:1000;background-color:var(--white, #ffffff);border:1px solid var(--border-color, #d0d9e0);border-top:none;border-radius:0 0 var(--rounded-base) var(--rounded-base);box-shadow:var(--shadow-lg);max-height:300px;overflow-y:auto;list-style:none;margin:0;padding:0}.select-option{width:100%;padding:var(--space-3) var(--space-4);display:block;text-align:left;font-family:var(--font-primary);font-size:inherit;line-height:var(--line-height-normal);color:var(--text-primary, #1a1a1a);border:none;background-color:transparent;cursor:pointer;transition:all var(--duration-base) var(--easing-in-out);-webkit-font-smoothing:antialiased}.select-option:hover{background-color:var(--primary-teal-alpha-10, rgba(0, 36, 47, .1))}.select-option-selected{background-color:var(--primary-teal-alpha-15, rgba(0, 36, 47, .15));color:var(--primary-teal, #00242f);font-weight:var(--font-weight-semibold)}.select-option-selected:hover{background-color:var(--primary-teal-alpha-20, rgba(0, 36, 47, .2))}.select-helper-text{font-family:var(--font-primary);font-size:var(--font-size-xs);color:var(--text-muted, #999999);line-height:var(--line-height-tight)}.select-error-text{font-family:var(--font-primary);font-size:var(--font-size-xs);color:var(--error, #dc3545);line-height:var(--line-height-tight);font-weight:var(--font-weight-medium)}.select-trigger:focus-visible{outline:2px solid var(--primary-teal, #00242f);outline-offset:2px}@media(prefers-contrast:more){.select-trigger,.select-error .select-trigger{border-width:2px}}@media(prefers-color-scheme:dark){.select-trigger{background-color:#1a1a1a;border-color:#333;color:#fff}.select-menu{background-color:#1a1a1a;border-color:#333}.select-option{color:#fff}.select-trigger:disabled{background-color:#0d0d0d;border-color:#333;color:#666}}.simple-toast{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:16px 20px;border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:10000;animation:slideInRight .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.simple-toast__content{display:flex;align-items:center;gap:12px;flex:1}.simple-toast__icon{font-size:20px;flex-shrink:0}.simple-toast__message{font-size:14px;font-weight:500;line-height:1.4;color:#fff}.simple-toast__close{background:none;border:none;color:#fffc;font-size:18px;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.simple-toast__close:hover{background:#fff3;color:#fff}.simple-toast-success{background:linear-gradient(135deg,#4caf50,#388e3c)}.simple-toast-error{background:linear-gradient(135deg,#e74c3c,#c0392b)}.simple-toast-warning{background:linear-gradient(135deg,#ff9800,#f57c00)}.simple-toast-info{background:linear-gradient(135deg,#2196f3,#1976d2)}@media(max-width:768px){.simple-toast{top:10px;right:10px;left:10px;min-width:auto;max-width:none}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:200px;padding:20px;background:#fafbfc;border-radius:8px;border:1px solid #e1e8ed}.error-boundary--page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:none;border-radius:0}.error-boundary--component{margin:10px 0;background:#fff9f9;border-color:#fed7d7}.error-boundary__container{max-width:600px;width:100%;text-align:center}.error-boundary__header{margin-bottom:2rem}.error-boundary__logo{height:60px;width:auto}.error-boundary__content{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin-bottom:1rem}.error-boundary__icon{font-size:4rem;margin-bottom:1rem;opacity:.8}.error-boundary__title{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:1rem;line-height:1.3}.error-boundary__message{color:#4a5568;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.error-boundary__details{margin:1.5rem 0;text-align:left}.error-boundary__details-summary{color:#718096;cursor:pointer;font-size:.9rem;margin-bottom:.5rem;-webkit-user-select:none;user-select:none}.error-boundary__details-summary:hover{color:#f25924}.error-boundary__details-content{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;font-size:.85rem;color:#2d3748}.error-boundary__stack,.error-boundary__component-stack{background:#1a202c;color:#e2e8f0;padding:.75rem;border-radius:4px;font-family:Consolas,Monaco,monospace;font-size:.8rem;overflow-x:auto;white-space:pre-wrap;margin-top:.5rem;max-height:200px;overflow-y:auto}.error-boundary__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.error-boundary__button{padding:.75rem 2rem;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;min-width:140px}.error-boundary__button--primary{background:#f25924;color:#fff}.error-boundary__button--primary:hover{background:#e14818;transform:translateY(-1px);box-shadow:0 4px 12px #f259244d}.error-boundary__button--secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.error-boundary__button--secondary:hover{background:#f7fafc;border-color:#cbd5e0;transform:translateY(-1px)}.error-boundary__footer{text-align:center;margin-top:1rem}.error-boundary__contact{color:#718096;font-size:.9rem;line-height:1.5;margin:0}.error-boundary--component .error-boundary__content{padding:1.5rem;box-shadow:0 2px 8px #0000000f}.error-boundary--component .error-boundary__icon{font-size:2.5rem;margin-bottom:.75rem}.error-boundary--component .error-boundary__title{font-size:1.25rem;margin-bottom:.75rem}.error-boundary--component .error-boundary__message{font-size:.95rem;margin-bottom:1rem}.error-boundary--component .error-boundary__button{padding:.6rem 1.5rem;font-size:.9rem;min-width:120px}@media(max-width:640px){.error-boundary{padding:15px}.error-boundary__content{padding:1.5rem}.error-boundary__title{font-size:1.3rem}.error-boundary__actions{flex-direction:column;align-items:center}.error-boundary__button{width:100%;max-width:280px}.error-boundary__details-content{font-size:.8rem;padding:.75rem}}.error-boundary__button--primary:active{transform:translateY(0)}.error-boundary__button--loading{position:relative;color:transparent}.error-boundary__button--loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:button-spin 1s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.theme-selector{position:relative;z-index:1000}.theme-selector-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;animation:fadeIn .3s ease}.theme-selector-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--overlay-medium);border:1px solid var(--overlay-dark);border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:80px}.theme-selector-toggle:hover{background:var(--overlay-dark);transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-orange-alpha-20)}.theme-icon{font-size:16px}.theme-label{font-family:var(--font-primary)}.theme-selector-dropdown{position:fixed;top:50%;left:calc(50% + 100px);transform:translate(-50%,-50%);width:320px;max-height:80vh;background:linear-gradient(145deg,var(--primary-teal-dark),var(--primary-teal));border:1px solid var(--accent-orange-alpha-30);border-radius:16px;box-shadow:0 20px 60px #0006,0 0 0 1px #ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow:hidden;animation:slideDown .3s ease;z-index:10000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.theme-selector-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,var(--accent-orange-alpha-10),var(--accent-orange-alpha-05));border-bottom:1px solid var(--accent-orange-alpha-20)}.theme-selector-header h3{margin:0;font-size:16px;font-weight:600;color:#fff;font-family:var(--font-primary)}.theme-close-btn{background:none;border:none;color:#ffffffb3;font-size:18px;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.theme-close-btn:hover{background:var(--accent-orange-alpha-20);color:#fff}.theme-options{padding:12px;max-height:calc(80vh - 80px);overflow-y:auto;overflow-x:hidden}.theme-option{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .3s ease;position:relative;border:2px solid transparent;margin-bottom:2px}.theme-option:hover{background:var(--accent-orange-alpha-10);border-color:var(--accent-orange-alpha-20);transform:translate(4px)}.theme-option.active{background:var(--accent-orange-alpha-15);border-color:var(--accent-orange-alpha-40);box-shadow:0 4px 12px var(--accent-orange-alpha-20)}.theme-preview{display:flex;gap:4px;flex-shrink:0}.color-preview{width:20px;height:20px;border-radius:6px;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 4px #0003}.theme-info{display:flex;align-items:center;gap:8px;flex:1}.theme-emoji{font-size:18px}.theme-name{color:#fff;font-size:14px;font-weight:500;font-family:var(--font-primary)}.theme-active-indicator{color:var(--accent-orange);font-size:16px;font-weight:700;flex-shrink:0}.theme-options::-webkit-scrollbar{width:6px}.theme-options::-webkit-scrollbar-track{background:var(--overlay-light);border-radius:3px}.theme-options::-webkit-scrollbar-thumb{background:var(--overlay-medium);border-radius:3px}.theme-options::-webkit-scrollbar-thumb:hover{background:var(--overlay-dark)}@media(max-width:768px){.theme-selector-dropdown{left:50%;width:90vw;max-width:280px;max-height:70vh}.theme-selector-toggle{padding:6px 10px;font-size:13px}.theme-options{max-height:calc(70vh - 80px)}}@media(max-width:480px){.theme-selector-dropdown{left:50%;width:95vw;max-width:260px;max-height:60vh}.theme-options{max-height:calc(60vh - 80px);padding:8px}.theme-option{padding:10px}}.confirm-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.confirm-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-modal-header{padding:24px;display:flex;align-items:center;gap:12px;border-bottom:2px solid #e9ecef}.confirm-modal-header.confirm-modal-danger{background:linear-gradient(135deg,#e74c3c1a,#c0392b0d);border-bottom-color:#e74c3c33}.confirm-modal-header.confirm-modal-warning{background:linear-gradient(135deg,#ff98001a,#f57c000d);border-bottom-color:#ff980033}.confirm-modal-header.confirm-modal-info{background:linear-gradient(135deg,#2196f31a,#1976d20d);border-bottom-color:#2196f333}.confirm-modal-icon{font-size:32px;flex-shrink:0}.confirm-modal-title{font-size:20px;font-weight:700;color:var(--primary-teal-dark);margin:0}.confirm-modal-body{padding:24px}.confirm-modal-message{font-size:16px;line-height:1.6;color:#495057;margin:0}.confirm-modal-footer{padding:20px 24px;display:flex;gap:12px;justify-content:flex-end;border-top:1px solid #e9ecef;background:#f8f9fa}.confirm-modal-button{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px}.confirm-modal-button-cancel{background:#6c757d;color:#fff}.confirm-modal-button-cancel:hover{background:#5a6268;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d4d}.confirm-modal-button-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 4px 12px #e74c3c4d}.confirm-modal-button-danger:hover{transform:translateY(-1px);box-shadow:0 6px 16px #e74c3c66}.confirm-modal-button-warning{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;box-shadow:0 4px 12px #ff98004d}.confirm-modal-button-warning:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ff980066}.confirm-modal-button-info{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;box-shadow:0 4px 12px #2196f34d}.confirm-modal-button-info:hover{transform:translateY(-1px);box-shadow:0 6px 16px #2196f366}.confirm-modal-button:active{transform:translateY(0)}.confirm-modal-button:focus{outline:2px solid var(--accent-orange);outline-offset:2px}@media(max-width:768px){.confirm-modal{width:95%;margin:20px}.confirm-modal-header,.confirm-modal-body{padding:20px}.confirm-modal-footer{flex-direction:column-reverse;padding:16px 20px}.confirm-modal-button{width:100%}}.contact-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;padding:1rem;animation:contact-modal-fadeIn .3s ease}@keyframes contact-modal-fadeIn{0%{opacity:0}to{opacity:1}}.contact-modal{background:#fff!important;border-radius:24px;box-shadow:0 20px 60px #0000004d,0 10px 30px #0003;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.9);max-width:950px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:contact-modal-slideUp .3s ease}@keyframes contact-modal-slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.contact-modal-close{position:absolute;top:1rem;right:1rem;background:#0000000d;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:24px;color:#1f2937!important;transition:all .3s ease;z-index:10;line-height:1}.contact-modal-close:hover{background:#0000001a;color:#ff6b35;transform:rotate(90deg)}.contact-modal-content{padding:2rem 2.25rem;background:#fff!important}.contact-modal-title{text-align:left;margin-bottom:1.5rem;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;color:#aeefc5!important;position:relative;display:block;width:100%;padding-bottom:1rem}.contact-modal-title:after{content:"";position:absolute;bottom:0;left:0;width:0;height:4px;background:linear-gradient(90deg,#ff6b35,#ff8c61);border-radius:2px;animation:contact-modal-lineExpand .8s ease-out forwards;animation-delay:.3s}@keyframes contact-modal-lineExpand{0%{width:0}to{width:100%}}.contact-modal-subtitle{font-size:clamp(.9375rem,1.5vw,1rem);color:#6c757d;margin:0 0 1.5rem;line-height:1.6}.contact-modal-form{display:flex;flex-direction:column;gap:.875rem}.contact-modal-message{padding:1rem;border-radius:12px;font-size:.9375rem;line-height:1.5;margin-bottom:.5rem}.contact-modal-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.contact-modal-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.contact-modal-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-modal-form-row+.contact-modal-form-group{margin-top:-.25rem}.contact-modal-form-group{display:flex;flex-direction:column;gap:.3125rem}.contact-modal-form-group label{font-weight:600;font-size:.8125rem;color:#374151;letter-spacing:.01em;margin-bottom:.25rem;font-family:var(--font-primary);display:block}.contact-modal-form-group input{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#111827;font-family:var(--font-primary);font-size:.9375rem;font-weight:400;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;height:44px;width:100%;box-sizing:border-box}.contact-modal-form-group textarea{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#111827;font-family:var(--font-primary);font-size:.9375rem;font-weight:400;line-height:1.5;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;resize:vertical;min-height:60px;height:60px;width:100%;box-sizing:border-box}.contact-modal-form-group input::placeholder,.contact-modal-form-group textarea::placeholder{color:#9ca3af;font-weight:400;opacity:.7}.contact-modal-form-group input:hover,.contact-modal-form-group textarea:hover{border-color:#d1d5db;box-shadow:0 2px 6px #00000014}.contact-modal-form-group input:focus,.contact-modal-form-group textarea:focus{outline:none;border-color:#ff6b35;background:#fff;box-shadow:0 0 0 4px #ff6b351a,0 2px 4px #0000000d}.contact-modal-form-group input:focus:hover,.contact-modal-form-group textarea:focus:hover{border-color:#ff6b35}.contact-modal-form-group input:disabled,.contact-modal-form-group textarea:disabled{opacity:.6;cursor:not-allowed;background:#f9fafb}.contact-modal-submit{margin-top:.25rem;padding:.9375rem 2rem;background:linear-gradient(135deg,#ff6b35,#ff8456);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #ff6b354d;letter-spacing:.02em;width:100%;font-family:var(--font-primary);text-transform:none}.contact-modal-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #ff6b3566;background:linear-gradient(135deg,#ff5722,#ff6b35)}.contact-modal-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #ff6b3559}.contact-modal-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-modal-alternative{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15)}.contact-modal-methods{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.contact-modal-method{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;border-radius:12px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid transparent;text-align:left}.contact-modal-method.email-method{background:#ff6b351f;border-color:#ff6b3540}.contact-modal-method.email-method:hover{background:#ff6b3533;border-color:#ff6b3566;transform:translateY(-1px)}.contact-modal-method.whatsapp-method{background:#25d3661f;border-color:#25d36640}.contact-modal-method.whatsapp-method:hover{background:#25d36633;border-color:#25d36666;transform:translateY(-1px)}.contact-modal-method:active{transform:translateY(0)}.contact-modal-method-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.8;margin-bottom:.125rem}.contact-modal-method.email-method .contact-modal-method-label{color:#ff6b35}.contact-modal-method.whatsapp-method .contact-modal-method-label{color:#25d366}.contact-modal-method-value{font-size:.75rem;font-weight:500;line-height:1.4;word-break:break-word;color:#1f2937}@media(max-width:768px){.contact-modal{max-width:100%;border-radius:20px;max-height:95vh}.contact-modal-content{padding:2rem 1.5rem}.contact-modal-form-row{grid-template-columns:1fr;gap:1rem}.contact-modal-methods{grid-template-columns:1fr;gap:.625rem}.contact-modal-close{top:.75rem;right:.75rem;width:32px;height:32px;font-size:20px}}@media(max-width:480px){.contact-modal-content{padding:1.75rem 1.25rem}.contact-modal-title{font-size:1.5rem;margin-bottom:.75rem}.contact-modal-subtitle{font-size:.875rem;margin-bottom:1.5rem}.contact-modal-form-group input,.contact-modal-form-group textarea{font-size:16px;padding:.875rem .9375rem;min-height:48px}.contact-modal-form-group textarea{min-height:80px}}.login-container{height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;padding:10px;font-family:var(--font-primary);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);animation:float 20s ease-in-out infinite;z-index:1;pointer-events:none}.login-container:after{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgba(255,255,255,0.05)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');z-index:1;pointer-events:none;opacity:.3}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(1deg)}66%{transform:translateY(10px) rotate(-1deg)}}.login-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:20px 32px 24px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:480px;max-height:85vh;min-height:auto;position:relative;z-index:2;border:1px solid rgba(255,255,255,.2);transform:translateY(0);transition:all .3s ease;display:flex;flex-direction:column;overflow-y:auto}.login-card:hover{transform:translateY(-5px);box-shadow:0 30px 80px #0006}.login-header{text-align:center;margin:10px -32px 20px;padding:0;flex-shrink:0}.brand-container{display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:0}.login-logo{width:380px;height:auto;max-width:100%;margin:0;padding:0;display:block;line-height:1}.login-container .login-card .platform-subtitle{font-size:13px!important;color:#6c757d!important;margin:10px 0 0!important;padding:0!important;font-weight:400!important;letter-spacing:.5px!important;opacity:.85!important;line-height:1.2!important;text-align:center!important;max-width:none!important;align-self:auto!important;width:auto!important}.login-form{display:flex;flex-direction:column;gap:var(--space-6);flex:1;justify-content:flex-start}.login-password-wrapper{position:relative}.password-toggle{position:absolute;right:var(--space-4);top:2.4rem;background:none;border:none;cursor:pointer;font-size:18px;color:var(--text-muted, #6c757d);transition:all var(--duration-base) var(--easing-in-out);padding:var(--space-2);border-radius:var(--rounded-sm);z-index:10}.password-toggle:hover:not(:disabled){color:var(--accent-orange);background:#f259241a}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.login-button{margin-top:var(--space-2)}.login-footer{margin-top:var(--space-4);text-align:center;padding-top:var(--space-4);border-top:1px solid rgba(0,0,0,.08)}.get-access-button{background:transparent;border:2px solid var(--primary-teal);color:var(--primary-teal);padding:var(--space-3) var(--space-6);border-radius:var(--rounded-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--duration-base) var(--easing-out);font-family:var(--font-primary);width:100%;min-height:44px}.get-access-button:hover{background:var(--primary-teal);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0d4d4d4d}.get-access-button:active{transform:translateY(0)}.form-group{position:relative;margin-bottom:16px}.form-label{display:block;font-size:13px;font-weight:600;color:var(--primary-teal-dark);margin-bottom:6px;transition:all .3s ease}.form-input{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:12px;font-size:15px;background:#ffffffe6;transition:all .3s ease;box-sizing:border-box;position:relative}.form-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 4px #f05a241a;background:#fff}.form-input:focus+.form-label{color:var(--accent-orange)}.error-message{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;padding:var(--space-3) var(--space-4);border-radius:var(--rounded-base);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2);box-shadow:var(--shadow-md);animation:slideIn .3s ease}.language-selector{margin-bottom:18px;text-align:center;flex-shrink:0}.language-label{display:block;font-size:12px;font-weight:600;color:var(--primary-teal-dark);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.language-buttons{display:flex;gap:12px;justify-content:center}.language-btn{background:#ffffffe6;border:2px solid #e9ecef;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease;color:#6c757d;display:flex;align-items:center;gap:6px}.language-btn:hover{border-color:var(--accent-orange);background:#f05a240d;color:var(--accent-orange);transform:translateY(-1px);box-shadow:0 4px 12px #f05a2433}.language-btn.active{background:linear-gradient(135deg,var(--accent-orange) 0%,var(--accent-orange-dark) 100%);border-color:var(--accent-orange);color:#fff;box-shadow:0 4px 12px #f05a244d}.language-btn.active:hover{transform:translateY(-1px);box-shadow:0 6px 16px #f05a2466}@media(max-width:768px){.login-container{padding:16px}.login-card{padding:20px 24px 24px;border-radius:20px;max-height:95vh}.login-header{margin:-45px -24px 18px;padding:0}.login-logo{width:300px;margin-bottom:2px}.platform-subtitle{font-size:12px;margin-top:2px}.language-selector{margin-bottom:16px}.form-group{margin-bottom:14px}.form-input{padding:11px 14px;font-size:15px}.login-button{padding:12px 24px;font-size:15px;height:46px}.language-buttons{flex-direction:column;gap:8px}.language-btn{padding:7px 12px;font-size:13px}}@media(max-width:480px){.login-card{padding:18px 20px 22px;max-height:98vh}.login-header{margin:-40px -30px 16px;padding:0}.brand-container{gap:0}.login-logo{width:260px;height:auto;margin-bottom:2px}.platform-subtitle{font-size:15px;letter-spacing:.4px;margin-top:2px}.language-selector{margin-bottom:14px}.language-label{font-size:11px;margin-bottom:8px}.form-group{margin-bottom:14px}.form-label{font-size:12px;margin-bottom:5px}.form-input{padding:10px 14px;font-size:15px}.login-button{padding:11px 20px;font-size:14px;height:44px}}@media(prefers-color-scheme:dark){.login-card{background:#1e1e1ef2;border-color:#ffffff1a}.login-title{background:linear-gradient(135deg,var(--accent-orange) 0%,var(--accent-orange-dark) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.form-label{color:#e9ecef}.form-input{background:#282828e6;border-color:#495057;color:#e9ecef}.form-input:focus{background:#323232e6}}.button-text{transition:all .3s ease;white-space:nowrap;line-height:1;display:flex;align-items:center}.invite-welcome-modal{position:fixed;inset:0;height:100vh;display:flex;align-items:center;justify-content:center;padding:10px;font-family:var(--font-primary);z-index:9999;overflow-y:auto}.invite-welcome-modal .brand-background{position:fixed;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:-1}.invite-welcome-modal .brand-overlay{position:absolute;inset:0;background:#0006;pointer-events:none}.invite-welcome-modal .invite-content{background:#fffffffa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:16px 28px 20px;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff4d;width:100%;max-width:480px;max-height:90vh;position:relative;z-index:2;border:1px solid rgba(255,255,255,.3);transform:translateY(0);transition:all .3s ease;display:flex;flex-direction:column;overflow-y:auto}.invite-welcome-modal .invite-content:hover{transform:translateY(-5px);box-shadow:0 30px 80px #0009,0 0 0 1px #fff6}.invite-welcome-modal .invite-content::-webkit-scrollbar{width:6px}.invite-welcome-modal .invite-content::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.invite-welcome-modal .invite-content::-webkit-scrollbar-thumb{background:#0003;border-radius:10px}.invite-welcome-modal .invite-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.invite-welcome-modal .invite-header{text-align:center;margin:8px -28px 12px;padding:0;flex-shrink:0}.invite-welcome-modal .brand-container{display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:0}.invite-welcome-modal .invite-logo{width:280px;height:auto;max-width:100%;margin:0;padding:0;display:block;line-height:1}.invite-welcome-modal .platform-subtitle{font-size:12px!important;color:#6c757d!important;margin:6px 0 10px!important;padding:0!important;font-weight:400!important;letter-spacing:.5px!important;opacity:.85!important;line-height:1.2!important;text-align:center!important}.invite-welcome-modal .language-selector{display:flex;justify-content:center;margin-bottom:14px;position:relative;z-index:10}.invite-welcome-modal .language-label{display:none}.invite-welcome-modal .language-buttons{display:flex;gap:6px;justify-content:flex-end}.invite-welcome-modal .language-btn{background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease;color:#6c757d;display:flex;align-items:center;gap:4px}.invite-welcome-modal .language-btn:hover{border-color:#f25924;background:#f259240d;color:#f25924;transform:translateY(-1px)}.invite-welcome-modal .language-btn.active{background:linear-gradient(135deg,#f25924,#ff8a5b);border-color:#f25924;color:#fff;box-shadow:0 2px 6px #f2592433}.invite-welcome-modal .language-btn.active:hover{box-shadow:0 3px 8px #f259244d}.invite-welcome-modal .group-section{text-align:center;margin-bottom:14px}.invite-welcome-modal .access-subtitle{font-size:12px;color:#6c757d;margin:0 0 6px;font-weight:400;letter-spacing:.3px}.invite-welcome-modal .group-name{font-size:20px;font-weight:700;background:linear-gradient(135deg,#f25924,#ff8a5b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:.3px}.invite-welcome-modal .services-section,.invite-welcome-modal .credentials-section{margin-bottom:12px}.invite-welcome-modal .section-title{font-size:13px;font-weight:600;color:#0d4d4d!important;margin:0 0 8px;display:flex;align-items:center;gap:6px}.invite-welcome-modal .services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.invite-welcome-modal .service-badge{background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:8px;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .2s}.invite-welcome-modal .service-badge:hover{background:#f259240d;border-color:#f259244d;transform:translateY(-2px)}.invite-welcome-modal .service-icon{font-size:18px}.invite-welcome-modal .service-name{font-size:10px;color:#1a1a1a!important;text-align:center;font-weight:600;line-height:1.2}.invite-welcome-modal .no-services{color:#0006;font-size:13px;text-align:center;padding:16px;font-style:italic}.invite-welcome-modal .credentials-box{background:#00000005;border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px}.invite-welcome-modal .credential-item{display:flex;flex-direction:column;gap:5px}.invite-welcome-modal .credential-item label{font-size:11px;color:#0d4d4d;font-weight:600;margin-bottom:0}.invite-welcome-modal .credential-value{background:#ffffffe6;border:2px solid #e9ecef;border-radius:10px;padding:10px 14px;color:#1a1a1a;font-size:14px;font-weight:500;transition:all .3s ease}.invite-welcome-modal .credential-value.username{color:#f25924;font-weight:600}.invite-welcome-modal .password-container{position:relative;display:flex;align-items:center}.invite-welcome-modal .credential-value.password{flex:1;padding-right:48px;font-family:Courier New,monospace}.invite-welcome-modal .toggle-password{position:absolute;right:14px;background:none;border:none;color:#6c757d;font-size:16px;cursor:pointer;padding:4px 6px;border-radius:4px;transition:all .2s}.invite-welcome-modal .toggle-password:hover{color:#f25924;background:#f259241a}.invite-welcome-modal .expiration-section{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;padding:8px 12px;display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:12px}.invite-welcome-modal .expiration-icon{font-size:16px}.invite-welcome-modal .expiration-text{font-size:11px;color:#000000b3}.invite-welcome-modal .expiration-text strong{color:#1a1a1a;font-weight:600}.invite-welcome-modal .actions-section{display:flex;gap:8px;margin-top:4px}.invite-welcome-modal .btn{flex:1;padding:10px 18px;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px;min-height:40px}.invite-welcome-modal .btn:disabled{opacity:.5;cursor:not-allowed}.invite-welcome-modal .btn-primary{background:linear-gradient(135deg,#f25924,#ff8a5b);color:#fff;box-shadow:0 4px 12px #f259244d}.invite-welcome-modal .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #f2592466}.invite-welcome-modal .btn-primary:active:not(:disabled){transform:translateY(0)}.invite-welcome-modal .btn-secondary{background:transparent;color:#0d4d4d;border:2px solid #0d4d4d}.invite-welcome-modal .btn-secondary:hover:not(:disabled){background:#0d4d4d;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0d4d4d4d}@media(max-width:768px){.invite-welcome-modal .invite-content{padding:16px 24px 20px;border-radius:20px;max-height:95vh}.invite-welcome-modal .invite-header{margin:8px -24px 12px}.invite-welcome-modal .invite-logo{width:280px}.invite-welcome-modal .language-buttons{gap:4px}.invite-welcome-modal .language-btn{padding:4px 6px;font-size:10px}.invite-welcome-modal .services-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px}.invite-welcome-modal .actions-section{flex-direction:column;gap:6px}.invite-welcome-modal .btn{width:100%}}@media(max-width:480px){.invite-welcome-modal .invite-content{padding:14px 20px 18px;max-height:98vh}.invite-welcome-modal .invite-header{margin:6px -20px 10px}.invite-welcome-modal .invite-logo{width:240px}.invite-welcome-modal .platform-subtitle{font-size:11px!important}.invite-welcome-modal .services-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:6px}.invite-welcome-modal .btn{padding:9px 16px;font-size:12px;height:38px}}@media(prefers-color-scheme:dark){.invite-welcome-modal .invite-content{background:#1e1e1ef2;border-color:#ffffff1a}.invite-welcome-modal .platform-subtitle,.invite-welcome-modal .access-subtitle,.invite-welcome-modal .section-title,.invite-welcome-modal .credential-item label{color:#e9ecef!important}.invite-welcome-modal .credential-value{background:#282828e6;border-color:#495057;color:#e9ecef}.invite-welcome-modal .credential-value:focus{background:#323232e6}}.invite-error-container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:9999}.invite-error-container .error-background{position:absolute;inset:0;background:linear-gradient(180deg,#1a1a2e,#16213e,#0f3460);z-index:-1}.invite-error-container .error-wave{position:absolute;bottom:0;left:0;width:200%;height:120px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120'%3E%3Cpath d='M0,60 Q300,0 600,60 T1200,60 L1200,120 L0,120 Z' fill='rgba(239, 68, 68, 0.15)'/%3E%3C/svg%3E");background-size:50% 100%;animation:wave-animation 20s linear infinite}.invite-error-container .error-wave.error-wave1{opacity:.3;animation-duration:25s}.invite-error-container .error-wave.error-wave2{opacity:.5;animation-duration:20s;animation-delay:-5s}.invite-error-container .error-wave.error-wave3{opacity:.7;animation-duration:15s;animation-delay:-2s}@keyframes wave-animation{0%{transform:translate(0)}to{transform:translate(-50%)}}.invite-error-container .error-content{position:relative;max-width:500px;margin:20px;padding:40px 32px;background:#1e1e2ee6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 60px #00000080;text-align:center;animation:fadeInUp .5s ease-out}.language-selector-error{position:absolute;top:20px;right:20px;display:flex;gap:8px;z-index:10}.language-selector-error .lang-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.language-selector-error .lang-btn:hover{background:#ffffff26;border-color:#ffffff4d;color:#ffffffe6}.language-selector-error .lang-btn.active{background:#ef444433;border-color:#ef444480;color:#ef4444}.language-selector-error .lang-btn.active:hover{background:#ef44444d;border-color:#ef444499}.invite-error-container .error-icon{font-size:64px;margin-bottom:20px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.invite-error-container .error-title{font-size:28px;font-weight:700;color:#ff6b6b;margin:0 0 16px}.invite-error-container .error-message{font-size:16px;color:#fffc;margin:0 0 20px;line-height:1.6}.invite-error-container .error-details{background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 16px;margin-bottom:20px;font-size:14px;color:#fff9}.invite-error-container .error-suggestion{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:12px;padding:16px;margin-bottom:28px;display:flex;align-items:flex-start;gap:12px;text-align:left}.invite-error-container .suggestion-icon{font-size:20px;flex-shrink:0}.invite-error-container .error-suggestion p{margin:0;font-size:14px;color:#fffc;line-height:1.5}.invite-error-container .error-button{width:100%;padding:14px 24px;background:linear-gradient(135deg,#4fc3f7,#0091ea);border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #4fc3f74d}.invite-error-container .error-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #4fc3f766}.invite-error-container .error-button:active{transform:translateY(0)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.error-content{margin:20px;padding:32px 24px}.error-icon{font-size:48px}.error-title{font-size:24px}.error-message{font-size:14px}}.invite-loading{position:fixed;inset:0;background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;z-index:9999}.invite-loading p{color:#fffc;font-size:16px;font-weight:500}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.1);border-top-color:#4fc3f7;border-radius:50%;animation:spin 1s linear infinite}.admin-container{min-height:100vh;background:linear-gradient(135deg,var(--white) 0%,var(--light-gray) 100%);font-family:var(--font-primary);position:relative;overflow-x:auto}.admin-content{position:relative;z-index:2;max-width:1600px;margin:0 auto;padding:0 2rem 2rem}.admin-header{background:var(--white);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 20px #00000014;border:1px solid rgba(15,118,110,.1);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}.admin-title{display:flex;align-items:center;gap:1.5rem;flex:1;min-width:300px}.admin-logo{width:180px;height:auto;border-radius:12px;box-shadow:0 2px 12px #0f766e26;transition:transform .3s ease}.admin-logo:hover{transform:scale(1.02)}.admin-title h1{font-size:1.75rem;font-weight:600;color:var(--primary-teal);margin:0;font-family:var(--font-primary);letter-spacing:-.02em}.admin-subtitle{font-size:.875rem;color:#0f766eb3;margin:.25rem 0 0;font-weight:400}.admin-actions{display:flex;gap:.75rem;flex-wrap:wrap;position:relative;z-index:1}.admin-button{background:var(--primary-teal);color:var(--white);border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:500;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0f766e33;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.admin-button:hover{background:var(--primary-teal-dark);transform:translateY(-1px);box-shadow:0 4px 12px #0f766e4d}.admin-button:active{transform:translateY(0)}.admin-button.secondary{background:var(--medium-gray);box-shadow:0 2px 8px #6c757d33}.admin-button.secondary:hover{background:#5a6268;box-shadow:0 4px 12px #6c757d4d}.admin-button.language-btn{background:#2196f3;box-shadow:0 2px 8px #2196f333}.admin-button.language-btn:hover{background:#1976d2;box-shadow:0 4px 12px #2196f34d}.admin-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-button.small{padding:.5rem 1rem;font-size:.8125rem}.admin-button.danger{background:var(--error);box-shadow:0 2px 8px #dc354533}.admin-button.danger:hover{background:#c82333;box-shadow:0 4px 12px #dc35454d}.loading-overlay{position:fixed;inset:0;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000}.loading-spinner{width:40px;height:40px;border:3px solid rgba(15,118,110,.2);border-top-color:var(--primary-teal);border-radius:50%;animation:spin .8s linear infinite}.error-message,.success-message{padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease;font-family:var(--font-primary)}.error-message{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 2px 12px #e74c3c40}.success-message{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;box-shadow:0 2px 12px #28a74540}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.admin-main{display:flex;flex-direction:column;gap:1.5rem}.admin-section{background:var(--white);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;padding:2rem;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(15,118,110,.1);transition:box-shadow .3s ease}.admin-section:hover{box-shadow:0 4px 20px #0000001a}.admin-section h2,.admin-section .section-title,.admin-section h2.section-title{color:#000!important}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(15,118,110,.15);background:transparent}.section-title{font-size:1.375rem;font-weight:700;color:#000!important;margin:0;display:flex;align-items:center;gap:.75rem;font-family:var(--font-primary);letter-spacing:-.01em;text-shadow:none}.section-title span{font-size:1.625rem;filter:none}.section-subtitle{font-size:.875rem;color:#0f766e!important;font-weight:600;margin:0;font-family:var(--font-primary);background:#0f766e14;padding:.375rem .875rem;border-radius:20px;display:inline-block}.section-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-label{font-size:.875rem;font-weight:600;color:var(--primary-teal);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem;font-family:var(--font-primary)}.form-input{padding:.75rem 1rem;border:2px solid rgba(15,118,110,.2);border-radius:8px;font-size:.875rem;background:var(--white);color:var(--primary-teal);transition:all .2s ease;font-family:var(--font-primary);font-weight:400}.form-input::placeholder{color:#0f766e8c;font-weight:400;opacity:1}.form-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #0f766e26;background:var(--white);color:var(--primary-teal)}.form-input:hover{border-color:#0f766e59;background:var(--white)}.form-input:not(:placeholder-shown){color:var(--primary-teal);font-weight:400}.form-input[type=number]{font-family:Courier New,monospace;font-weight:500;letter-spacing:.5px}.form-textarea{min-height:100px;resize:vertical;line-height:1.5}.form-input-error{border-color:var(--error)!important;box-shadow:0 0 0 3px #dc35451a!important}.form-error{color:var(--error);font-size:.75rem;margin-top:.25rem;display:block;font-weight:500}.password-container{position:relative}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1rem;color:#0f766eb3;transition:all .2s ease;padding:.25rem;border-radius:4px;z-index:1}.password-toggle:hover{color:var(--primary-teal);background:#0f766e1f}.checkbox-group{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.75rem;border-radius:8px;transition:all .2s ease}.checkbox-group:hover{background:#0f766e0a}.checkbox-input{width:18px;height:18px;accent-color:var(--primary-teal);cursor:pointer;flex-shrink:0}.checkbox-label{font-size:.875rem;font-weight:500;color:var(--primary-teal);cursor:pointer;flex:1;line-height:1.4;font-family:var(--font-primary)}.admin-modal-body{color:var(--primary-teal)}.admin-modal-body .form-label,.admin-modal-body .checkbox-label,.admin-modal-body .section-title,.admin-modal-body h2,.admin-modal-body h3,.admin-modal-body h4,.admin-modal-body h5,.admin-modal-body p,.admin-modal-body span:not(.form-error):not(.loading-spinner){color:var(--primary-teal)!important}.admin-modal-body .form-input,.admin-modal-body select.form-input,.admin-modal-body textarea.form-input{color:var(--primary-teal)!important;background:var(--white)!important}.admin-modal-body .form-input::placeholder{color:#0f766e99!important;opacity:1!important}.admin-modal-body .text-small,.admin-modal-body p,.admin-modal-body small{color:#0f766ebf!important;font-weight:400}.coordinates-container .form-label,.ftp-paths-container .form-label,.alert-settings-container .form-label{color:var(--primary-teal)!important;font-weight:600}select.form-input{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%2300242f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px;padding-right:2.5rem;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;color:var(--primary-teal)!important;background:var(--white)!important}select.form-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%2300242f' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e")}select.form-input option{background:var(--white);color:var(--primary-teal);padding:.5rem;font-weight:400}select.form-input:focus option{background:var(--white);color:var(--primary-teal)}.groups-list{max-height:600px;overflow-y:auto;border-radius:12px;background:var(--light-gray);border:1px solid rgba(15,118,110,.1)}.group-item{padding:1.25rem;border-bottom:1px solid rgba(15,118,110,.1);transition:all .2s ease;cursor:pointer;background:var(--white)}.group-item:hover{background:#0f766e0a;transform:translate(4px)}.group-item:last-child{border-bottom:none}.group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.group-name{font-size:1rem;font-weight:600;color:var(--primary-teal);margin:0;font-family:var(--font-primary)}.group-status{padding:.25rem .75rem;border-radius:20px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.group-status.active{background:#28a7451a;color:#28a745;border:1px solid rgba(40,167,69,.2)}.group-status.inactive{background:#9e9e9e1a;color:#9e9e9e;border:1px solid rgba(158,158,158,.2)}.group-badges{display:flex;gap:.5rem;align-items:center}.group-role{padding:.25rem .5rem;border-radius:6px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.group-role.admin{background:var(--primary-teal);color:#fff}.group-role.user{background:var(--medium-gray);color:#fff}.group-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;font-size:.8125rem;color:#0f766ebf;font-weight:400}.group-info-item{display:flex;align-items:center;gap:.5rem}.group-actions{display:flex;gap:.5rem;margin-top:.75rem}.action-button{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;font-family:var(--font-primary)}.action-button.edit{background:#2196f3;color:#fff}.action-button.delete{background:var(--error);color:#fff}.action-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.coordinates-container{background:#0f766e0a;border:1px solid rgba(15,118,110,.15);border-radius:12px;padding:1.25rem;margin-bottom:1.25rem}.coordinates-container .form-label{color:var(--primary-teal);font-weight:600}.coordinates-container .form-grid{margin-bottom:0}.coordinates-container .form-input[type=number]{background:var(--white);border:2px solid rgba(15,118,110,.15);text-align:center}.coordinates-container .form-input[type=number]:focus{border-color:var(--primary-teal);box-shadow:0 0 0 3px #0f766e1a}.points-section{background:linear-gradient(135deg,#0f766e0d,#0f766e05);border-radius:12px;padding:1.5rem;margin-top:1.5rem;border:2px solid rgba(15,118,110,.1);box-shadow:0 2px 12px #0f766e14}.section-subheader{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid rgba(15,118,110,.1)}.section-subheader h4{margin:0;color:var(--primary-teal);font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.5rem;font-family:var(--font-primary)}.point-item{background:var(--white);border-radius:8px;padding:1rem;margin-bottom:1rem;border:1px solid rgba(15,118,110,.1);box-shadow:0 1px 4px #0000000a;transition:all .2s ease;animation:slideInUp .3s ease-out}.point-item:hover{border-color:var(--primary-teal);box-shadow:0 2px 8px #0f766e1a}.point-header{display:flex;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid rgba(15,118,110,.1)}.point-header h5{margin:0;color:var(--primary-teal);font-size:.8125rem;font-weight:600;display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary)}.point-fields{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:.75rem;padding:1rem;background:var(--light-gray);border-radius:8px;border:1px solid rgba(15,118,110,.1);align-items:end}.point-fields .form-group{margin-bottom:0}.point-fields .form-group label{font-size:.6875rem;font-weight:600;color:var(--primary-teal);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.point-fields .form-input{padding:.5rem .75rem;border:1px solid rgba(15,118,110,.15);border-radius:6px;font-size:.8125rem;min-height:36px}.point-fields .form-input:focus{border-color:var(--primary-teal);box-shadow:0 0 0 2px #0f766e1a}.points-section .empty-state{background:#0f766e08;border:2px dashed rgba(15,118,110,.2);border-radius:8px;padding:2rem;text-align:center;color:#0f766e99}.alert-settings-container{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,#ffc10714,#ffc1070a);border-radius:12px;border:2px solid rgba(255,193,7,.2)}.alert-settings-container .form-label,.alert-settings-container .checkbox-label,.alert-settings-container .section-title,.alert-settings-container h3,.alert-settings-container h4{color:var(--primary-teal)!important}.alert-settings-container .form-input{color:var(--primary-teal)!important;background:var(--white)!important}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1.5rem}.admin-modal-body>.section-header+.checkbox-grid,.admin-modal-body>.section-header+div[style*=grid]{margin-top:0;margin-bottom:1.5rem}.admin-modal-body .alert-settings-container,.admin-modal-body .points-section,.admin-modal-body .coordinates-container{margin-top:1.5rem}.ftp-paths-container{margin-top:1rem;padding:1rem;background:var(--light-gray);border-radius:8px;border:1px solid rgba(15,118,110,.15)}.ftp-path-item{margin-bottom:1rem;padding:1rem;background:var(--white);border-radius:8px;border:1px solid rgba(15,118,110,.1)}.ftp-path-item:last-child{margin-bottom:0}.ftp-path-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.ftp-path-header h4{margin:0;font-size:.875rem;font-weight:600;color:var(--primary-teal);font-family:var(--font-primary)}.ftp-path-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.ftp-path-fields label{display:block;font-size:.75rem;font-weight:600;margin-bottom:.25rem;color:var(--primary-teal);font-family:var(--font-primary)}.thresholds-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.thresholds-grid label{display:block;font-size:.75rem;font-weight:600;margin-bottom:.25rem;color:var(--primary-teal);font-family:var(--font-primary)}.notifications-section{margin-top:1.5rem;padding:1.25rem;background:#0f766e08;border-radius:8px;border:1px solid rgba(15,118,110,.1)}.recipients-list{margin-top:.75rem}.recipient-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--white);border-radius:6px;margin-bottom:.5rem;border:1px solid rgba(15,118,110,.1)}.recipient-item input{flex:1;border:none;background:transparent;padding:.25rem;font-size:.875rem;color:var(--primary-teal);font-family:var(--font-primary)}.recipient-item input:focus{outline:none}.email-recipients-field,.whatsapp-recipients-field{margin-bottom:1.5rem}.email-recipients-header,.whatsapp-recipients-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.email-recipients-header .form-label,.whatsapp-recipients-header .form-label{margin-bottom:0;font-weight:600;color:var(--primary-teal)}.email-count,.whatsapp-count{font-size:.75rem;font-weight:600;color:#0f766eb3;background:#0f766e14;padding:.25rem .75rem;border-radius:12px;font-family:var(--font-primary)}.email-recipients-input,.whatsapp-recipients-input{width:100%;min-height:120px;font-family:Courier New,Consolas,Monaco,monospace;font-size:.875rem;line-height:1.6;padding:.875rem 1rem;border:2px solid rgba(15,118,110,.2);border-radius:8px;background:var(--white);color:var(--primary-teal);resize:vertical;transition:all .2s ease}.email-recipients-input:focus,.whatsapp-recipients-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #0f766e1a;background:var(--white)}.email-recipients-input::placeholder,.whatsapp-recipients-input::placeholder{color:#0f766e80;font-weight:400;opacity:1;line-height:1.6}.email-recipients-hint,.whatsapp-recipients-hint{display:flex;align-items:flex-start;gap:.5rem;margin-top:.5rem;padding:.75rem;background:#0f766e0a;border-radius:6px;border-left:3px solid rgba(15,118,110,.2);font-size:.8125rem;color:#0f766ebf;line-height:1.5;font-family:var(--font-primary)}.email-recipients-hint span:first-child,.whatsapp-recipients-hint span:first-child{font-size:1rem;flex-shrink:0;margin-top:.125rem}.mt-2{margin-top:1rem}.mb-2{margin-bottom:1rem}.text-small{font-size:.75rem;color:#0f766ebf;font-weight:400}.text-error{font-size:.6875rem;color:var(--error)}.admin-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease}.admin-modal{background:var(--white);border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease;border:1px solid rgba(15,118,110,.1);position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:2px solid rgba(15,118,110,.1);background:var(--white);flex-shrink:0}.admin-modal-title{font-size:1.5rem;font-weight:600;color:var(--primary-teal);margin:0;display:flex;align-items:center;gap:.75rem;font-family:var(--font-primary)}.admin-modal-title span{font-size:1.75rem}.admin-modal-close{background:none;border:none;font-size:1.5rem;color:#0f766e99;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:36px;height:36px;line-height:1}.admin-modal-close:hover{background:#0f766e1a;color:var(--primary-teal)}.admin-modal-body{flex:1;overflow-y:auto;padding:2rem;background:var(--white);color:var(--primary-teal)}.admin-modal-body>.form-grid:first-child{margin-top:0}.admin-modal-body>.section-header{margin-top:2.5rem;margin-bottom:1.5rem;padding-top:1.5rem;border-top:2px solid rgba(15,118,110,.1)}.admin-modal-body>.section-header:first-of-type{margin-top:0;padding-top:0;border-top:none}.admin-modal-body>div[style*=grid]{margin-bottom:1.5rem}.admin-modal-body::-webkit-scrollbar-track{background:var(--light-gray)}.admin-modal-body::-webkit-scrollbar-thumb{background:#0f766e4d;border-radius:4px}.admin-modal-body::-webkit-scrollbar-thumb:hover{background:#0f766e80}.admin-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.5rem 2rem;border-top:2px solid rgba(15,118,110,.1);background:var(--light-gray);flex-shrink:0}.admin-button:focus-visible,.action-button:focus-visible,.form-input:focus-visible,.admin-modal-close:focus-visible{outline:2px solid var(--primary-teal);outline-offset:2px}@media(max-width:1200px){.admin-main{flex-direction:column}}@media(max-width:768px){.admin-container{padding:1rem}.admin-header{padding:1.5rem;flex-direction:column;text-align:center}.admin-title{flex-direction:column;text-align:center}.admin-title h1{font-size:1.5rem}.admin-actions{justify-content:center;width:100%}.admin-section{padding:1.5rem}.form-grid{grid-template-columns:1fr;gap:1rem}.section-title{font-size:1.125rem}.point-fields{grid-template-columns:1fr 1fr auto}.section-subheader{flex-direction:column;align-items:flex-start;gap:.75rem}.admin-modal{max-width:95%;max-height:85vh}.admin-modal-header{padding:1.25rem 1.5rem}.admin-modal-body{padding:1.5rem}.admin-modal-footer{padding:1.25rem 1.5rem}}@media(max-width:480px){.admin-header,.admin-section{padding:1.25rem}.admin-title h1{font-size:1.25rem}.admin-logo{width:140px}.admin-button{padding:.625rem 1rem;font-size:.8125rem}.point-fields{grid-template-columns:1fr}.admin-modal{max-width:100%;max-height:95vh;border-radius:12px 12px 0 0;margin-top:auto}.admin-modal-header{padding:1.25rem 1.5rem}.admin-modal-title{font-size:1.25rem}.admin-modal-body{padding:1.5rem}.admin-modal-footer{padding:1.25rem 1.5rem;flex-direction:column-reverse}.admin-modal-footer .btn{width:100%;justify-content:center}}.admin-modal .input-wrapper{margin-bottom:var(--space-4)}.admin-modal .input-label span:first-child{margin-right:var(--space-2)}.admin-modal .select-wrapper{margin-bottom:var(--space-4)}.admin-password-wrapper{position:relative;margin-bottom:var(--space-4)}.admin-password-toggle{position:absolute;right:var(--space-4);top:2.4rem;background:none;border:none;cursor:pointer;font-size:18px;color:var(--text-muted, #999999);transition:all var(--duration-base) var(--easing-in-out);padding:var(--space-2);border-radius:var(--rounded-sm);z-index:10}.admin-password-toggle:hover:not(:disabled){color:var(--accent-orange);background:#f259241a}.admin-password-toggle:disabled{cursor:not-allowed;opacity:.5}.admin-modal-footer{display:flex;gap:var(--space-4);justify-content:flex-end;padding:var(--space-6);border-top:1px solid var(--border-color, #e9ecef);background:var(--bg-light, #f8f9fa)}.admin-modal-footer .btn{min-width:120px}.service-config-section{background:#f8f9fa;border-radius:12px;padding:1.5rem;margin-top:1.5rem;border:1px solid #dee2e6}.service-config-section h4{margin:0 0 .5rem;font-size:1.1rem;color:var(--primary-teal);display:flex;align-items:center;gap:.5rem}.service-config-section .help-text{font-size:.875rem;color:#6c757d;margin:0 0 1rem;line-height:1.5}.ftp-path-item{display:flex;gap:.75rem;align-items:center;margin-bottom:.75rem;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #e9ecef}.ftp-path-item input{flex:1;min-width:0}.ftp-path-item input[type=number]{max-width:120px}.ftp-path-item .action-button{flex-shrink:0;padding:.5rem 1rem}.alert-section{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #e9ecef}.alert-section .checkbox-group{margin-bottom:1rem}.alert-section .form-group{margin-top:1rem}.alert-section textarea{font-family:Courier New,monospace;font-size:.875rem}.section-divider{margin:2rem 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e9ecef}.section-divider h3{margin:0;font-size:1.2rem;color:var(--primary-teal);display:flex;align-items:center;gap:.5rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.admin-modal-body{flex:1;overflow-y:auto;padding:2rem;background:#f8f9fa;max-height:calc(90vh - 200px);scrollbar-width:thin;scrollbar-color:var(--primary-teal) #e9ecef}.admin-modal-body::-webkit-scrollbar{width:8px}.admin-modal-body::-webkit-scrollbar-track{background:#e9ecef;border-radius:4px}.admin-modal-body::-webkit-scrollbar-thumb{background:var(--primary-teal);border-radius:4px}.admin-modal-body::-webkit-scrollbar-thumb:hover{background:var(--primary-teal-dark)}.admin-modal-header-content h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--primary-teal)}.admin-modal-subtitle{margin:.5rem 0 0;font-size:.875rem;color:#0f766eb3;font-weight:400}.form-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid #e9ecef;transition:all .3s ease}.form-section:hover{box-shadow:0 4px 12px #0000000d;border-color:#0f766e33}.form-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f1f3f5}.form-section-title{display:flex;align-items:center;gap:.75rem;margin:0;font-size:1.125rem;font-weight:600;color:#212529}.form-section-icon{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.form-section-badge{font-size:.75rem;font-weight:600;padding:.25rem .75rem;background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #dc354533}.form-section-description{margin:0 0 1.5rem;padding:1rem;background:#e7f5ff;border-left:3px solid #2196F3;border-radius:4px;font-size:.875rem;color:#495057;line-height:1.5}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-row.single{grid-template-columns:1fr}.form-row.three-cols{grid-template-columns:repeat(3,1fr)}@media(max-width:768px){.form-row,.form-row.three-cols{grid-template-columns:1fr}}.admin-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-top:2px solid #e9ecef;background:#fff;flex-shrink:0;gap:1rem;flex-wrap:wrap}.admin-modal-footer-info{display:flex;align-items:center;gap:.5rem;color:#6c757d;font-size:.875rem}.required-indicator{color:#dc3545;font-size:1rem;font-weight:700}.required-text{font-weight:500}.admin-modal-footer-actions{display:flex;gap:1rem;margin-left:auto}.spinner-small{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;margin-right:.5rem}.admin-button.primary{background:linear-gradient(135deg,var(--primary-teal) 0%,#20c997 100%);box-shadow:0 4px 12px #0f766e4d;font-weight:600}.admin-button.primary:hover:not(:disabled){background:linear-gradient(135deg,#0d9488,#1aa384);box-shadow:0 6px 16px #0f766e66;transform:translateY(-2px)}.admin-button.primary:disabled{background:#dee2e6;color:#6c757d;cursor:not-allowed;box-shadow:none;transform:none}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:0}.checkbox-group{background:#f8f9fa;padding:1rem;border-radius:8px;border:2px solid transparent;transition:all .2s ease;cursor:pointer;display:flex;align-items:center;gap:.75rem}.checkbox-group:hover{background:#e9ecef;border-color:var(--primary-teal);transform:translateY(-1px);box-shadow:0 2px 8px #0f766e26}.checkbox-input{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-teal)}.checkbox-label{cursor:pointer;font-weight:500;color:#212529;-webkit-user-select:none;user-select:none;font-size:.9375rem;margin:0}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-weight:600;color:#212529;font-size:.9375rem;display:flex;align-items:center;gap:.5rem}.form-label .required{color:#dc3545;margin-left:.25rem}.form-input{padding:.875rem 1rem;border:2px solid #dee2e6;border-radius:8px;font-size:.9375rem;transition:all .2s ease;background:#fff}.form-input:hover:not(:disabled){border-color:#adb5bd}.form-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 4px #0f766e1a}.form-input.error{border-color:#dc3545;background:#fff5f5}.form-input.error:focus{box-shadow:0 0 0 4px #dc35451a}.form-error{color:#dc3545;font-size:.8125rem;font-weight:500;display:flex;align-items:center;gap:.25rem}.form-error:before{content:"u26a0ufe0f";font-size:.875rem}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper .form-input{flex:1;padding-right:3rem}.admin-password-toggle{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;font-size:1.25rem;padding:.5rem;color:#6c757d;transition:all .2s ease;border-radius:4px}.admin-password-toggle:hover{background:#f8f9fa;color:var(--primary-teal)}@media(max-width:768px){.admin-modal{max-width:95vw;max-height:95vh}.admin-modal-body{padding:1.5rem;max-height:calc(95vh - 180px)}.admin-modal-footer{flex-direction:column;align-items:stretch}.admin-modal-footer-actions{width:100%;flex-direction:column;margin-left:0}.admin-modal-footer-actions button{width:100%;justify-content:center}.services-grid{grid-template-columns:1fr}.form-section{padding:1rem}}.form-section{animation:fadeInUp .3s ease-out}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary-teal);outline-offset:2px}@media(prefers-color-scheme:dark){.admin-modal-body{background:#1a1a1a}.form-section{background:#2d2d2d;border-color:#404040}.form-section-description{background:#1e3a5f;border-color:#2196f3;color:#e9ecef}.checkbox-group{background:#2d2d2d}.checkbox-group:hover{background:#3d3d3d}}.groups-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 20px #00000014;border:1px solid rgba(15,118,110,.1);animation:fadeIn .4s ease-out}.groups-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #f1f3f5;flex-wrap:wrap;gap:1rem}.groups-header h2{font-size:1.5rem;font-weight:600;color:var(--primary-teal);margin:0;display:flex;align-items:center;gap:.5rem}.search-container{flex:0 1 auto;min-width:280px;max-width:400px}.search-input{width:100%;padding:.875rem 1.25rem;border:2px solid #dee2e6;border-radius:12px;font-size:.9375rem;transition:all .3s ease;background:#f8f9fa;font-family:var(--font-primary)}.search-input:focus{outline:none;border-color:var(--primary-teal);background:#fff;box-shadow:0 0 0 4px #0f766e1a}.search-input::placeholder{color:#adb5bd}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;animation:fadeInUp .5s ease-out}.group-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;padding:1.75rem;border:2px solid rgba(15,118,110,.1);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.group-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(135deg,var(--primary-teal) 0%,#20c997 100%);opacity:0;transition:opacity .3s ease}.group-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px #0f766e33;border-color:var(--primary-teal)}.group-card:hover:before{opacity:1}.group-card-header{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:2px solid #e9ecef}.group-card-header h3{font-size:1.25rem;font-weight:700;color:#212529;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.group-card-header h3:before{content:"";font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.role-badge,.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-right:.5rem;margin-bottom:.5rem;box-shadow:0 2px 8px #0000001a}.role-badge.administrator{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.role-badge.user{background:linear-gradient(135deg,#64748b,#475569);color:#fff}.group-description{font-size:.9375rem;color:#64748b;line-height:1.6;margin:0 0 1.25rem;padding:.875rem;background:#0f766e0a;border-left:3px solid var(--primary-teal);border-radius:8px;font-style:italic}.group-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:12px;border:1px solid #e9ecef}.stat{display:flex;align-items:center;gap:.625rem;font-size:.875rem;font-weight:600;color:#495057}.stat span:first-child{font-size:1.25rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.group-card .group-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:2px solid #e9ecef}.group-card .action-button{flex:1;padding:.75rem 1.25rem;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-primary);position:relative;overflow:hidden}.group-card .action-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.group-card .action-button:hover:before{width:300px;height:300px}.group-card .action-button.edit{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.group-card .action-button.edit:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.group-card .action-button.invite{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}.group-card .action-button.invite:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 6px 16px #10b98166;transform:translateY(-2px)}.group-card .action-button.delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.group-card .action-button.delete:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 16px #ef444466;transform:translateY(-2px)}.empty-state{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:16px;border:2px dashed rgba(15,118,110,.3)}.empty-state h3{font-size:1.5rem;font-weight:600;color:#495057;margin:0 0 .5rem}.empty-state p{font-size:1rem;color:#6c757d;margin:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.groups-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media(max-width:768px){.groups-section{padding:1.5rem}.groups-header{flex-direction:column;align-items:stretch}.groups-header h2{font-size:1.25rem}.search-container{max-width:100%}.groups-grid{grid-template-columns:1fr}.group-card{padding:1.25rem}.group-stats{flex-direction:column;gap:.75rem}.group-card .group-actions{flex-direction:column}.group-card .action-button{width:100%}}@media(prefers-color-scheme:dark){.groups-section{background:#1a1a1a;border-color:#404040}.group-card{background:linear-gradient(135deg,#2d2d2d,#1a1a1a);border-color:#404040}.group-card-header{border-color:#404040}.group-card-header h3{color:#e9ecef}.group-description{background:#0f766e26;color:#adb5bd}.group-stats{background:#2d2d2d;border-color:#404040}.stat{color:#adb5bd}.empty-state{background:linear-gradient(135deg,#2d2d2d,#1a1a1a);border-color:#0f766e4d}.empty-state h3{color:#e9ecef}.empty-state p{color:#adb5bd}}.header-content{width:100%}.badges-row{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.role-badge,.status-badge{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.4rem .9rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;box-shadow:0 2px 8px #0000001f;white-space:nowrap;min-width:fit-content}.role-badge.administrator{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:.4rem 1rem}.role-badge.user{background:linear-gradient(135deg,#64748b,#475569);color:#fff;padding:.4rem .9rem}.status-badge{min-width:32px;width:32px;height:32px;padding:0;border-radius:50%;font-size:1rem}.status-badge.active{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.status-badge.inactive{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.services-list{display:flex;flex-wrap:wrap;gap:.625rem;margin:1.25rem 0;padding:1rem;background:linear-gradient(135deg,#0f766e08,#0f766e03);border-radius:12px;border:1px solid rgba(15,118,110,.1);min-height:60px}.service-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:#fff;border:1.5px solid rgba(15,118,110,.15);border-radius:10px;transition:all .2s ease;cursor:help;box-shadow:0 1px 3px #0000000d}.service-item:hover{border-color:var(--primary-teal);box-shadow:0 4px 12px #0f766e26;transform:translateY(-2px)}.service-icon{font-size:1.25rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));flex-shrink:0}.service-info{display:flex;flex-direction:column;gap:.125rem}.service-name{font-size:.75rem;font-weight:600;color:#495057;text-transform:uppercase;letter-spacing:.3px;line-height:1}.service-count{font-size:.6875rem;font-weight:700;color:var(--primary-teal);background:#0f766e1a;padding:.125rem .375rem;border-radius:8px;line-height:1;width:fit-content}.no-services{width:100%;text-align:center;color:#9ca3af;font-size:.8125rem;font-style:italic;padding:.5rem}.group-stats{display:flex;gap:1rem;margin-bottom:0;padding:.875rem 1rem;background:#f8f9fa;border-radius:10px;border:1px solid #e9ecef;justify-content:space-between}.stat{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;color:#495057;padding:.375rem .75rem;background:#fff;border-radius:8px;border:1px solid #e9ecef;transition:all .2s ease}.stat:hover{border-color:var(--primary-teal);box-shadow:0 2px 6px #0f766e1a}.stat span:first-child{font-size:1.125rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.alert-stat{background:linear-gradient(135deg,#fbbf241a,#f59e0b1a);border-color:#fbbf244d;color:#f59e0b}@media(max-width:768px){.services-list{gap:.5rem;padding:.875rem}.service-item{padding:.4rem .7rem}.service-icon{font-size:1.125rem}.service-name{font-size:.6875rem}.group-stats{flex-direction:column;gap:.625rem}.stat{width:100%;justify-content:center}.badges-row{flex-wrap:wrap}}@media(prefers-color-scheme:dark){.services-list{background:linear-gradient(135deg,#0f766e26,#0f766e0d);border-color:#0f766e33}.service-item{background:#2d2d2d;border-color:#0f766e40}.service-item:hover{background:#3d3d3d;border-color:var(--primary-teal)}.service-name{color:#d1d5db}.service-count{background:#0f766e33;color:#20c997}.no-services{color:#6b7280}.stat{background:#2d2d2d;border-color:#404040;color:#d1d5db}.stat:hover{background:#3d3d3d}.alert-stat{background:linear-gradient(135deg,#fbbf2433,#f59e0b33);border-color:#fbbf2466}}.group-card{padding:1.5rem;min-height:auto}.group-card-header{margin-bottom:1.5rem;padding-bottom:0;border-bottom:none}.group-card-header h3{margin-bottom:.75rem}.header-content .role-badge{margin:0}.group-card .group-actions{margin-top:0;padding-top:0;border-top:none}.groups-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.badges-row{margin-top:0}@media(max-width:768px){.group-card{padding:1.25rem}.groups-grid{grid-template-columns:1fr}}@media(max-width:480px){.group-card-header h3{font-size:1.125rem}.role-badge{font-size:.6875rem;padding:.375rem .75rem}}.dashboard-header{background:linear-gradient(135deg,#0c5d70,#0e7490,#15969f);border-bottom:4px solid #f25924;padding:16px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 20px #00000026;font-family:var(--font-primary);min-height:70px;color:#fff}.admin-dashboard-header-title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:min(700px,calc(100% - 720px));text-align:center;pointer-events:none}.admin-dashboard-header-title-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{display:flex;gap:12px;align-items:center}@media(max-width:768px){.dashboard-header{padding:12px 16px;flex-direction:column;gap:12px;min-height:auto}.dashboard-header>div:first-child{position:static!important;transform:none!important;margin-left:0!important}.dashboard-header>div:first-child img{width:200px!important}.dashboard-header>div:nth-child(2){margin-left:0!important}.dashboard-header>div:nth-child(2) h1{font-size:18px!important}.header-actions{width:100%;justify-content:center}.admin-dashboard-header-title{position:static;transform:none;width:100%;pointer-events:auto}.admin-dashboard-header-title-text{white-space:normal}}@media(max-width:480px){.dashboard-header>div:first-child img{width:150px!important}.dashboard-header>div:nth-child(2) h1{font-size:16px!important}.header-actions button{font-size:12px!important;padding:6px 10px!important}}.generate-invite-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.generate-invite-modal-overlay *{box-sizing:border-box}.generate-invite-modal-overlay .generate-invite-modal>*:not(input):not(button),.generate-invite-modal-overlay .generate-invite-modal *:not(.generate-invite-modal):not(input):not(button){background:transparent!important}.generate-invite-modal{background:linear-gradient(135deg,#1e3a5f,#2d5a82)!important;border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out}.generate-invite-modal .modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 28px;border-bottom:1px solid rgba(255,255,255,.1)}.generate-invite-modal .modal-header h2{color:#fff!important;font-size:24px;font-weight:600;margin:0 0 8px}.generate-invite-modal-overlay .modal-header h2,.generate-invite-modal-overlay h2,.generate-invite-modal h2{color:#fff!important}.generate-invite-modal .modal-subtitle{color:#ffffffb3!important;font-size:14px;margin:0}.generate-invite-modal-overlay .modal-subtitle,.generate-invite-modal-overlay p{color:#ffffffb3!important}.generate-invite-modal .modal-subtitle strong{color:#4fc3f7;font-weight:600}.generate-invite-modal .close-button{background:#ffffff1a;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s}.generate-invite-modal .close-button:hover{background:#fff3;transform:scale(1.1)}.generate-invite-modal .modal-content{padding:28px;background:transparent!important}.generate-invite-modal-overlay .modal-content,.generate-invite-modal-overlay .generate-invite-modal .modal-content{background:transparent!important}.generate-invite-modal .form-section{display:flex;flex-direction:column;gap:20px;background:transparent!important}.generate-invite-modal-overlay .form-section,.generate-invite-modal-overlay .generate-invite-modal .form-section{background:transparent!important}.generate-invite-modal .form-group{display:flex;flex-direction:column;gap:8px;background:transparent!important}.generate-invite-modal-overlay .form-group,.generate-invite-modal-overlay .generate-invite-modal .form-group{background:transparent!important}.generate-invite-modal .form-group label{color:#fff!important;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.generate-invite-modal-overlay .generate-invite-modal .form-group label,.generate-invite-modal .modal-content .form-group label{color:#fff!important}.generate-invite-modal .form-group .help-text{color:#ffffffb3!important;font-size:12px;font-weight:400}.generate-invite-modal .form-group input{background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:8px;color:#fff!important;padding:12px 16px;font-size:14px;transition:all .2s}.generate-invite-modal-overlay .generate-invite-modal .form-group input,.generate-invite-modal .modal-content .form-group input,.generate-invite-modal-overlay input[type=text],.generate-invite-modal-overlay input[type=password],.generate-invite-modal-overlay input[type=number]{background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important}.generate-invite-modal .form-group input:focus{outline:none;background:#ffffff1f!important;border-color:#4fc3f7!important;box-shadow:0 0 0 3px #4fc3f71a}.generate-invite-modal .form-group input:disabled{opacity:.5;cursor:not-allowed}.generate-invite-modal .form-group input::placeholder{color:#fff6!important}.generate-invite-modal .error-message{background:#f4433626;border:1px solid rgba(244,67,54,.4);border-radius:8px;padding:12px 16px;color:#ff6b6b;font-size:14px;display:flex;align-items:center;gap:10px}.generate-invite-modal .error-icon{font-size:18px}.generate-invite-modal .form-actions{display:flex;gap:12px;margin-top:12px}.generate-invite-modal .button{flex:1;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.generate-invite-modal .button:disabled{opacity:.5;cursor:not-allowed}.generate-invite-modal .button-primary{background:linear-gradient(135deg,#4fc3f7,#0091ea);color:#fff}.generate-invite-modal .button-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4fc3f74d}.generate-invite-modal .button-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.generate-invite-modal .button-secondary:hover:not(:disabled){background:#ffffff26}.generate-invite-modal .result-section{display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.generate-invite-modal .success-icon{font-size:48px;animation:scaleIn .4s ease-out}.generate-invite-modal .result-section h3{color:#fff;font-size:20px;font-weight:600;margin:0}.generate-invite-modal .link-container{width:100%;display:flex;flex-direction:column;gap:8px}.generate-invite-modal .link-container label{color:#ffffffb3;font-size:13px;font-weight:500;text-align:left}.generate-invite-modal .link-box{display:flex;gap:8px;background:#0003;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px}.generate-invite-modal .link-box input{flex:1;background:transparent;border:none;color:#4fc3f7;font-size:13px;font-family:Courier New,monospace;padding:4px 8px;outline:none}.generate-invite-modal .copy-button{background:#4fc3f726;border:1px solid rgba(79,195,247,.3);color:#4fc3f7;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.generate-invite-modal .copy-button:hover{background:#4fc3f740;border-color:#4fc3f780}.generate-invite-modal .expiration-info{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;padding:12px 16px;color:#ffc107;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.generate-invite-modal .expiration-icon{font-size:18px}.generate-invite-modal .expiration-info strong{color:#fff}.generate-invite-modal .share-buttons{display:flex;gap:12px;width:100%}.generate-invite-modal .share-button{flex:1;padding:12px 20px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px}.generate-invite-modal .share-button .button-icon{font-size:16px}.generate-invite-modal .share-button.email{background:#2196f326;border:1px solid rgba(33,150,243,.3);color:#2196f3}.generate-invite-modal .share-button.email:hover{background:#2196f340;border-color:#2196f380;transform:translateY(-1px)}.generate-invite-modal .share-button.whatsapp{background:#4caf5026;border:1px solid rgba(76,175,80,.3);color:#4caf50}.generate-invite-modal .share-button.whatsapp:hover{background:#4caf5040;border-color:#4caf5080;transform:translateY(-1px)}.generate-invite-modal .result-actions{width:100%;margin-top:8px;display:flex;gap:12px}.generate-invite-modal .result-actions .button{flex:1}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media(max-width:600px){.generate-invite-modal{width:95%;max-height:95vh}.generate-invite-modal .modal-header,.generate-invite-modal .modal-content{padding:20px}.generate-invite-modal .share-buttons,.generate-invite-modal .link-box{flex-direction:column}.generate-invite-modal .copy-button{width:100%}}.vortex-header{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 50%,var(--primary-teal-light) 100%);border-bottom:4px solid var(--accent-orange);color:var(--white);display:flex;align-items:center;justify-content:space-between;padding:0 48px 0 32px;height:64px;font-family:var(--font-primary);box-shadow:0 2px 8px var(--overlay-medium);position:fixed;top:0;left:0;width:100vw;z-index:100;box-sizing:border-box;max-width:100vw;background-image:url('data:image/svg+xml;utf8,<svg width="400" height="64" viewBox="0 0 400 64" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 48 Q 100 68 200 48 T 400 48" stroke="%23f05a24" stroke-width="2" fill="none" opacity="0.3"/><path d="M0 24 Q 100 4 200 24 T 400 24" stroke="%23f05a24" stroke-width="2" fill="none" opacity="0.2"/></svg>');background-repeat:repeat-x;background-size:auto 64px}.vortex-header-left{display:flex;align-items:center}.vortex-logo-container{display:flex;align-items:center;margin-right:10px;margin-left:-100px}.vortex-logo-container a{display:flex;align-items:center;text-decoration:none;transition:all .3s ease;border-radius:8px;padding:4px}.vortex-logo-container a:hover{transform:scale(1.05);filter:brightness(1.1)}.vortex-logo-container a:active{transform:scale(.98)}.vortex-logo-img{height:364px;width:auto;margin-right:auto}.vortex-header-institution{font-size:1.2rem;font-weight:600;letter-spacing:1.2px;padding:12px 24px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);background:transparent;border:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;color:var(--accent-orange);text-shadow:0 0 15px rgba(240,90,36,.3),0 1px 2px rgba(0,0,0,.2);font-family:var(--font-primary)}.vortex-header-institution:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(240,90,36,.1),transparent);transition:left .8s ease;z-index:1}.vortex-header-institution:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(240,90,36,.05) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(240,90,36,.03) 0%,transparent 50%);z-index:0}.vortex-header-institution:hover{background:transparent;border:none;box-shadow:none;transform:translateY(-1px) scale(1.01);color:var(--accent-orange-dark);text-shadow:0 0 20px rgba(240,90,36,.4),0 2px 4px rgba(0,0,0,.3)}.vortex-header-institution:hover:before{left:100%}@keyframes titleGlow{0%{opacity:0;transform:translateY(-10px);text-shadow:0 0 0 rgba(240,90,36,0)}50%{opacity:.8;transform:translateY(-5px);text-shadow:0 0 10px rgba(240,90,36,.2)}to{opacity:1;transform:translateY(0);text-shadow:0 0 15px rgba(240,90,36,.3)}}.vortex-header-institution{animation:titleGlow 1.5s ease-out}.vortex-header-institution:before{content:"";position:absolute;top:50%;left:50%;width:200%;height:200%;background:radial-gradient(circle at 25% 25%,rgba(242,89,36,.05) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(242,89,36,.03) 0%,transparent 50%);transform:translate(-50%,-50%);animation:floatParticles 8s ease-in-out infinite;z-index:-1}@keyframes floatParticles{0%,to{transform:translate(-50%,-50%) rotate(0);opacity:.2}50%{transform:translate(-50%,-50%) rotate(180deg);opacity:.4}}.vortex-header-tools{display:flex;align-items:center;gap:12px;padding-right:8px}.vortex-tool-btn{min-width:44px;min-height:44px;padding:0;font-size:1.3rem;border-radius:10px;margin-left:0;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);background:#ffffff26;border:1px solid rgba(255,255,255,.25);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a}.vortex-tool-btn:hover{background:#ffffff40;border-color:#fff6;box-shadow:0 4px 16px #00000026;transform:translateY(-1px)}.vortex-tool-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0003}.vortex-tool-btn.active{background:linear-gradient(135deg,var(--accent-orange) 0%,var(--accent-orange-dark) 100%);color:#fff;border-color:var(--accent-orange);box-shadow:0 4px 16px #f2592466;transform:translateY(-1px)}.vortex-tool-btn span[role=img]{color:inherit;font-size:1.2rem;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.vortex-menu-btn{background:linear-gradient(135deg,var(--accent-orange) 0%,var(--accent-orange-dark) 100%)!important;border-color:var(--accent-orange)!important;color:#fff!important;box-shadow:0 4px 16px #f2592466!important}.vortex-menu-btn:hover{background:linear-gradient(135deg,var(--accent-orange-dark) 0%,#d14a1a 100%)!important;border-color:var(--accent-orange-dark)!important;box-shadow:0 6px 20px #f2592499!important;transform:translateY(-1px)}.vortex-menu-btn:active{transform:translateY(0);box-shadow:0 2px 8px #f2592466!important}.vortex-menu-icon{width:24px;height:24px;color:currentColor;transition:all .3s ease;pointer-events:none}.vortex-menu-btn:hover .vortex-menu-icon{transform:scale(1.1);filter:drop-shadow(0 0 4px rgba(255,255,255,.3))}.vortex-menu-btn:active .vortex-menu-icon{transform:scale(.95)}.vortex-language-btn{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,#3a3540 100%)!important;border-color:#ffffff4d!important;color:#fff!important;box-shadow:0 2px 8px #0003!important;position:relative;overflow:hidden;min-width:64px!important;min-height:44px!important;padding:8px 12px!important}.vortex-language-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .6s ease}.vortex-language-btn:hover{background:linear-gradient(135deg,#3a3540,#4a4550)!important;border-color:#fff6!important;box-shadow:0 4px 12px #0000004d!important;transform:translateY(-1px)}.vortex-language-btn:hover:before{left:100%}.vortex-language-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0003!important}@media(max-width:800px){.vortex-header{padding:0 4vw 0 8vw;height:56px;background-size:auto 56px}.vortex-logo-img{height:52px}.vortex-header-institution{font-size:.7rem;padding:6px 12px;letter-spacing:.5px}.vortex-header-tools{gap:8px;padding-right:0}.vortex-tool-btn{width:32px;height:32px;font-size:1.1rem;margin-left:0;min-width:32px;min-height:32px}.vortex-tool-btn span[role=img]{font-size:1rem}.vortex-language-btn{min-width:56px!important;min-height:32px!important;padding:6px 8px!important}.vortex-menu-icon{width:20px;height:20px}}@media(max-width:768px){.vortex-header{padding:0 2vw 0 4vw;height:52px;background-size:auto 52px}.vortex-logo-img{height:48px}.vortex-header-institution{font-size:.6rem;padding:5px 10px;letter-spacing:.4px}.vortex-header-tools{gap:6px;padding-right:0}.vortex-tool-btn{min-width:36px;min-height:36px;font-size:1.2rem;margin-left:0}.vortex-tool-btn span[role=img]{font-size:1.1rem}.vortex-language-btn{min-width:52px!important;min-height:36px!important;padding:6px 8px!important}.vortex-menu-icon{width:20px;height:20px}}@media(max-width:600px){.vortex-header{height:46px;background-size:auto 46px}.vortex-logo-img{height:44px}.vortex-header-institution{font-size:.5rem;padding:4px 8px;letter-spacing:.3px}.vortex-tool-btn{min-width:28px;min-height:28px;font-size:1rem;margin-left:0;padding:0}.vortex-tool-btn span[role=img]{font-size:.9rem}.vortex-language-btn{min-width:48px!important;min-height:28px!important;padding:4px 6px!important}.vortex-menu-icon{width:18px;height:18px}}@media(max-width:480px){.vortex-header{height:40px;background-size:auto 40px}.vortex-logo-img{height:40px}.vortex-header-institution{font-size:.4rem;padding:3px 6px;letter-spacing:.2px}.vortex-tool-btn{min-width:24px;min-height:24px;font-size:.85rem;margin-left:0;padding:0}.vortex-tool-btn span[role=img]{font-size:.8rem}.vortex-language-btn{min-width:44px!important;min-height:24px!important;padding:3px 5px!important}.vortex-menu-icon{width:16px;height:16px}}@media(max-width:360px){.vortex-header-institution{display:none}.vortex-header-left{justify-content:center}.vortex-logo-container{margin-right:0}.vortex-header-tools{gap:4px}.vortex-tool-btn{min-width:22px;min-height:22px;font-size:.8rem}.vortex-tool-btn span[role=img]{font-size:.75rem}.vortex-language-btn{min-width:40px!important;min-height:22px!important;padding:2px 4px!important}.vortex-menu-icon{width:14px;height:14px}}:root{--vortex-header-height: 56px;--sidebar-width: 380px;--sidebar-primary: var(--primary-teal-dark);--sidebar-secondary: var(--accent-orange);--sidebar-accent: rgba(240, 90, 36, .1);--sidebar-border: rgba(240, 90, 36, .2);--sidebar-text: var(--white);--sidebar-text-secondary: rgba(255, 255, 255, .9);--sidebar-text-muted: rgba(255, 255, 255, .7);--sidebar-shadow: 0 8px 32px rgba(0, 0, 0, .3);--sidebar-radius: 16px;--section-bg: rgba(255, 255, 255, .05);--section-hover: rgba(240, 90, 36, .15);--item-bg: rgba(255, 255, 255, .03);--item-hover: rgba(240, 90, 36, .12)}@media(min-width:601px){:root{--vortex-header-height: 64px}}.vortex-sidebar{width:var(--sidebar-width);min-width:320px;max-width:85vw;height:calc(100vh - var(--vortex-header-height));background:linear-gradient(135deg,var(--sidebar-primary) 0%,var(--primary-teal) 100%);color:var(--sidebar-text);box-shadow:var(--sidebar-shadow);z-index:300;position:fixed;top:var(--vortex-header-height);right:0;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:var(--sidebar-radius) 0 0 var(--sidebar-radius);display:flex;flex-direction:column;overflow:hidden;border-left:3px solid var(--sidebar-secondary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.vortex-sidebar-close{position:absolute;top:16px;right:16px;width:40px;height:40px;background:#f05a2426;border:2px solid rgba(240,90,36,.3);border-radius:12px;color:var(--sidebar-text);font-size:18px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.vortex-sidebar-close:hover{background:var(--sidebar-secondary);transform:scale(1.1);box-shadow:0 4px 16px #f05a2466}.vortex-sidebar-content{display:flex;flex-direction:column;height:100%;padding:16px;overflow:hidden}.vortex-user-card{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;width:100%!important;flex-wrap:nowrap!important}.vortex-user-card .user-left-section{display:flex!important;flex-direction:row!important;align-items:center!important;flex:1!important;min-width:0!important;flex-shrink:1!important}.vortex-user-card .user-info{display:flex!important;flex-direction:row!important;align-items:center!important;min-width:0!important;flex-wrap:nowrap!important;flex-shrink:1!important}.vortex-user-card .user-name{display:inline-block!important;margin:0!important;padding:0!important;color:#fff!important;flex-shrink:1!important}.vortex-user-card .user-role{display:inline-block!important;margin:0!important;color:#ffffffb3!important;flex-shrink:0!important}.vortex-user-card .user-actions{display:flex!important;flex-direction:row!important;flex-shrink:0!important;margin-left:auto!important;align-self:flex-end!important}.vortex-user-card .action-btn{display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.vortex-user-card>*{flex-shrink:0!important}.vortex-user-card .user-left-section{flex:1!important;flex-shrink:1!important}.vortex-user-card .user-actions{flex:0 0 auto!important;margin-left:auto!important}@media(max-width:600px){.vortex-user-card{padding:8px 12px!important;margin:12px 0!important;gap:8px!important;min-height:44px!important}.vortex-user-card .user-avatar{width:28px!important;height:28px!important}.vortex-user-card .user-name{font-size:.8rem!important}.vortex-user-card .user-role{font-size:.65rem!important;padding:1px 4px!important}.vortex-user-card .user-actions{margin-left:6px!important;gap:4px!important}.vortex-user-card .action-btn{width:26px!important;height:26px!important;font-size:.75rem!important}}@media(max-width:480px){.vortex-user-card{padding:6px 10px!important;margin:10px 0!important;gap:6px!important;min-height:40px!important}.vortex-user-card .user-avatar{width:24px!important;height:24px!important}.vortex-user-card .user-name{font-size:.75rem!important}.vortex-user-card .user-role{font-size:.6rem!important;padding:1px 3px!important}.vortex-user-card .user-actions{margin-left:4px!important;gap:3px!important}.vortex-user-card .action-btn{width:24px!important;height:24px!important;font-size:.7rem!important}}.vortex-sidebar-header-integrated{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:10px;flex-shrink:0}.header-left-section{display:flex;align-items:center}.logo-section{display:flex;align-items:center;gap:8px}.logo-icon-integrated{font-size:1.2rem;color:#fff}.title-integrated{font-size:1rem;font-weight:700;color:#fff!important;margin:0;letter-spacing:.3px}.header-right-section{display:flex;align-items:center}.user-section-integrated{display:flex;align-items:center;gap:8px}.user-avatar-integrated{width:24px;height:24px;background:linear-gradient(135deg,#f05a24cc,#f05a2499);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-icon-integrated{font-size:.7rem;color:#fff}.user-info-integrated{display:flex;flex-direction:column;gap:1px;min-width:0}.user-name-integrated{font-weight:600;color:#fff!important;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1}.user-role-integrated{color:#ffffffb3!important;font-size:.55rem;font-weight:500;text-transform:uppercase;letter-spacing:.3px;line-height:1}.user-actions-integrated{display:flex;gap:4px;flex-shrink:0}.action-btn-integrated{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;background:transparent;color:#ffffffb3!important;font-size:.6rem;padding:0}.action-btn-integrated:hover{background:#ffffff1a;color:#fff!important;transform:scale(1.1)}.action-btn-integrated.admin-btn:hover{background:#f05a2433}.action-btn-integrated.logout-btn:hover{background:#e74c3c33}.vortex-sidebar-header-refined{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(240,90,36,.2);flex-shrink:0}.header-top-section{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;position:relative}.vortex-sidebar-title-refined{font-size:1.1rem;font-weight:700;color:#fff!important;margin:0;letter-spacing:.5px;flex:1}.vortex-sidebar-close-refined{width:30px;height:30px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#ffffff0f;color:#ffffffbf;font-size:.95rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.4,0,.2,1);padding:0;flex-shrink:0}.vortex-sidebar-close-refined:hover{background:#f05a2433;border-color:#f05a2466;color:#fff;transform:scale(1.08);box-shadow:0 2px 8px #f05a2440}.vortex-user-card-refined{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px;padding:10px 14px;background:linear-gradient(135deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.12);border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box}.vortex-user-card-refined:hover{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border-color:#f05a2459;box-shadow:0 4px 16px #00000026,0 0 0 1px #f05a241a;transform:translateY(-1px)}.user-avatar-refined{width:42px;height:42px;min-width:42px;background:linear-gradient(135deg,#f05a24e6,#f05a24b3,#027066cc);border-radius:10px;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #0003,inset 0 1px #fff3;transition:all .3s ease}.vortex-user-card-refined:hover .user-avatar-refined{transform:scale(1.05);box-shadow:0 4px 12px #f05a244d,inset 0 1px #ffffff4d}.avatar-initial-refined{color:#fff;font-size:1.1rem;font-weight:700;line-height:1;text-shadow:0 1px 3px rgba(0,0,0,.3)}.user-info-refined{flex:1!important;min-width:0;display:flex!important;flex-direction:column!important;gap:4px;width:auto}.user-name-refined{color:#fff!important;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;letter-spacing:.2px}.user-role-refined{color:#ffffffbf!important;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.8px;line-height:1;padding:2px 8px;background:#f05a2426;border-radius:6px;display:inline-block;width:fit-content;border:1px solid rgba(240,90,36,.2)}.user-actions-refined{display:flex!important;flex-direction:row!important;gap:8px;flex-shrink:0!important;align-items:center!important;width:auto}.action-btn-refined{width:32px;height:32px;min-width:32px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#ffffff0f;color:#ffffffbf;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.4,0,.2,1);padding:0;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.action-btn-refined:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #0003}.admin-btn-refined:hover{background:#f05a2440;border-color:#f05a2480;color:#fff;box-shadow:0 4px 12px #f05a244d}.logout-btn-refined:hover{background:#e74c3c40;border-color:#e74c3c80;color:#fff;box-shadow:0 4px 12px #e74c3c4d}.vortex-sidebar-header-mini{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(240,90,36,.2);display:flex;align-items:center;gap:10px;flex-shrink:0}.vortex-sidebar-logo-mini{width:36px;height:36px;background:linear-gradient(135deg,var(--sidebar-secondary) 0%,#e14e1f 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #f05a244d;flex-shrink:0}.logo-icon-mini{font-size:18px;color:#fff}.vortex-sidebar-title-section-mini{flex:1;min-width:0}.vortex-sidebar-title-mini{font-size:1rem;font-weight:700;margin:0;color:#fff!important;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vortex-sidebar-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid rgba(240,90,36,.2);display:flex;align-items:center;gap:14px;flex-shrink:0}.vortex-sidebar-logo{width:48px;height:48px;background:linear-gradient(135deg,var(--sidebar-secondary) 0%,#e14e1f 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #f05a244d;flex-shrink:0}.logo-icon{font-size:24px;color:#fff}.vortex-sidebar-title-section{flex:1;min-width:0}.vortex-sidebar-title{font-size:1.2rem;font-weight:700;margin:0 0 4px;color:#fff!important;letter-spacing:.5px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vortex-sidebar-subtitle{font-size:.8rem;color:#ffffffe6!important;font-weight:500;margin:0;letter-spacing:.3px}.vortex-sidebar *{color:inherit}.vortex-sidebar h1,.vortex-sidebar h2,.vortex-sidebar h3,.vortex-sidebar h4,.vortex-sidebar h5,.vortex-sidebar h6,.vortex-sidebar p,.vortex-sidebar span,.vortex-sidebar div{color:#fff!important}.vortex-sidebar .section-toggle,.vortex-sidebar .item-group{color:var(--sidebar-secondary)!important}.vortex-sidebar .status-badge.available,.vortex-sidebar .status-badge.contract,.vortex-sidebar .role-badge,.vortex-sidebar .avatar-icon,.vortex-sidebar .btn-icon,.vortex-sidebar .logo-icon{color:#fff!important}.vortex-sidebar-categories{flex:1;overflow-y:auto;overflow-x:hidden;padding-right:4px;max-height:calc(100vh - 240px);min-height:0}.vortex-sidebar-categories::-webkit-scrollbar{width:6px}.vortex-sidebar-categories::-webkit-scrollbar-track{background:#ffffff08;border-radius:3px;margin:4px 0}.vortex-sidebar-categories::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--sidebar-secondary) 0%,#e14e1f 100%);border-radius:3px;box-shadow:0 2px 4px #f05a2433}.vortex-sidebar-categories::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#e14e1f 0%,var(--sidebar-secondary) 100%);box-shadow:0 2px 6px #f05a244d}.vortex-sidebar-section{margin-bottom:12px;background:var(--section-bg);border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.vortex-sidebar-section:hover{border-color:#f05a244d;box-shadow:0 4px 20px #f05a2426;transform:translateY(-1px)}.section-header{display:flex;align-items:center;padding:14px 18px;cursor:pointer;background:#ffffff08;transition:all .3s ease;-webkit-user-select:none;user-select:none;border-bottom:1px solid rgba(255,255,255,.05);min-height:52px}.section-header:hover{background:var(--section-hover)}.section-icon{font-size:1.2rem;margin-right:12px;width:24px;text-align:center;flex-shrink:0}.section-title{flex:1;font-weight:600;font-size:1rem!important;color:#fff!important;letter-spacing:.3px}.section-count{font-size:.75rem;color:#fff!important;font-weight:500;margin-right:12px;background:#ffffff26;padding:2px 8px;border-radius:12px;flex-shrink:0}.section-toggle{font-size:.8rem;color:var(--sidebar-secondary);transition:all .3s ease;width:20px;text-align:center;flex-shrink:0}.section-header:hover .section-toggle{transform:scale(1.1)}.section-content{padding:8px 8px 12px;background:#0000001a;display:flex;flex-direction:column;align-items:center}.sidebar-item{padding:10px 12px;margin:4px 0;background:var(--item-bg);border:1px solid rgba(255,255,255,.06);border-radius:8px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);width:95%!important;max-width:280px!important;box-sizing:border-box!important}.sidebar-item:hover{background:var(--item-hover);border-color:var(--sidebar-secondary);transform:translate(4px);box-shadow:0 4px 16px #f05a2433}.sidebar-item:last-child{margin-bottom:0}.sidebar-item.point-item{border-left:3px solid #4CAF50}.sidebar-item.service-item{border-left:3px solid var(--sidebar-secondary)}.item-main{display:flex;align-items:flex-start;gap:12px;width:100%}.item-icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0;margin-top:2px}.item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.item-name{font-weight:600;color:#fff!important;font-size:.9rem;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.item-description{font-size:.72rem;color:#ffffffd9!important;line-height:1.3;font-weight:400;margin:0}.item-group{color:var(--sidebar-secondary);font-weight:600;background:#f05a241a;padding:2px 6px;border-radius:8px;font-size:.7rem;margin-left:8px}.vortex-sidebar.hide{transform:translate(100%);opacity:0;pointer-events:none}.vortex-sidebar-overlay{display:none}@media(max-width:800px){.vortex-sidebar-overlay{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#1a1a2ecc;z-index:299;transition:opacity .25s}.vortex-sidebar{width:90vw;max-width:400px}}@media(max-width:600px){.vortex-sidebar{width:95vw;max-width:none}.vortex-sidebar-content{padding:55px 14px 14px}.section-content{padding:6px 6px 10px}.sidebar-item{margin:3px 0;width:92%!important;max-width:260px!important}.vortex-sidebar-categories{max-height:calc(100vh - 220px)}.vortex-sidebar-header-refined{margin-bottom:16px;padding-bottom:12px}.header-top-section{margin-bottom:12px}.vortex-sidebar-title-refined{font-size:1rem}.vortex-sidebar-close-refined{width:28px;height:28px;font-size:.9rem}.vortex-user-card-refined{padding:8px 12px;gap:10px}.user-avatar-refined{width:38px;height:38px;min-width:38px}.avatar-initial-refined{font-size:1rem}.user-name-refined{font-size:.85rem}.user-role-refined{font-size:.65rem;padding:2px 6px}.action-btn-refined{width:30px;height:30px;min-width:30px;font-size:.8rem}.vortex-sidebar-header-integrated{padding:10px 12px;margin-bottom:12px;gap:6px}.logo-icon-integrated{font-size:1rem}.title-integrated{font-size:.9rem}.user-avatar-integrated{width:20px;height:20px}.avatar-icon-integrated{font-size:.6rem}.user-name-integrated{font-size:.7rem}.user-role-integrated{font-size:.5rem}.action-btn-integrated{width:18px;height:18px;font-size:.55rem}.vortex-sidebar-logo-mini{width:32px;height:32px}.logo-icon-mini{font-size:16px}.vortex-sidebar-title-mini{font-size:.9rem}}@media(max-width:480px){.vortex-sidebar{width:100vw;border-radius:0}.vortex-sidebar-content{padding:50px 12px 12px}.section-content{padding:4px 4px 8px}.sidebar-item{margin:2px 0;width:90%!important;max-width:240px!important}.vortex-sidebar-categories{max-height:calc(100vh - 200px)}.vortex-sidebar-header-refined{margin-bottom:14px;padding-bottom:10px}.header-top-section{margin-bottom:10px}.vortex-sidebar-title-refined{font-size:.95rem}.vortex-sidebar-close-refined{width:26px;height:26px;font-size:.85rem}.vortex-user-card-refined{padding:7px 10px;gap:8px}.user-avatar-refined{width:34px;height:34px;min-width:34px}.avatar-initial-refined{font-size:.95rem}.user-name-refined{font-size:.8rem}.user-role-refined{font-size:.6rem;padding:2px 6px}.action-btn-refined{width:28px;height:28px;min-width:28px;font-size:.75rem}.vortex-sidebar-header-integrated{padding:8px 10px;margin-bottom:10px;gap:4px}.logo-icon-integrated{font-size:.9rem}.title-integrated{font-size:.8rem}.user-avatar-integrated{width:18px;height:18px}.avatar-icon-integrated{font-size:.55rem}.user-name-integrated{font-size:.65rem}.user-role-integrated{font-size:.45rem}.action-btn-integrated{width:16px;height:16px;font-size:.5rem}.vortex-sidebar-logo-mini{width:28px;height:28px}.logo-icon-mini{font-size:14px}.vortex-sidebar-title-mini{font-size:.8rem}}.sidebar-item.available{border-left:3px solid #4caf50}.sidebar-item.contract{border-left:3px solid #ff9800;opacity:.9}.sidebar-item.contract:hover{opacity:1;background:#ff98001a}.item-status{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:4px;margin-left:8px}.status-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.8rem;font-weight:700;box-shadow:0 2px 8px #0003}.status-container{display:flex;flex-direction:column;align-items:center;gap:4px}.status-badge.available{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.status-badge.contract{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.contract-notice{font-size:.6rem;color:#ff9800;font-style:italic;text-align:center;white-space:nowrap;font-weight:500;opacity:.9}.sidebar-item.contract .item-name{position:relative}.contact-modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.contact-modal{background:linear-gradient(135deg,var(--sidebar-primary) 0%,var(--primary-teal) 100%);border-radius:20px;box-shadow:0 32px 64px #00000080;border:2px solid rgba(240,90,36,.3);max-width:500px;width:90%;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.contact-modal-header{background:linear-gradient(135deg,var(--sidebar-secondary) 0%,#e14e1f 100%);padding:24px 28px;border-bottom:2px solid rgba(240,90,36,.3);position:relative;display:flex;align-items:center;justify-content:space-between}.contact-modal-title{color:#fff;font-size:1.3rem;font-weight:700;margin:0;display:flex;align-items:center;gap:12px;letter-spacing:.5px}.contact-icon{font-size:1.4rem}.contact-modal-close{background:none;border:none;color:#fff;font-size:1.6rem;cursor:pointer;padding:6px;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.contact-modal-close:hover{background:#fff3;transform:scale(1.1)}.contact-modal-content{padding:28px}.service-info{margin-bottom:28px;text-align:center;padding:24px;background:#f05a2414;border-radius:16px;border:2px solid rgba(240,90,36,.15)}@keyframes serviceHighlight{0%{box-shadow:0 4px 20px #f05a2433}50%{box-shadow:0 8px 32px #f05a2466}to{box-shadow:0 4px 20px #f05a2433}}.service-info>div:first-child{animation:serviceHighlight 3s ease-in-out infinite}.service-name{color:var(--sidebar-secondary);font-size:1.5rem;font-weight:800;margin:0 0 8px;text-transform:uppercase;letter-spacing:.8px;text-shadow:0 2px 4px rgba(0,0,0,.2)}.service-subtitle{color:var(--sidebar-secondary);font-size:1.2rem;margin:0 0 16px;font-weight:600;opacity:.9}.service-message{color:#fff!important;font-size:1rem;line-height:1.6;margin:0;font-weight:400}.contact-options{display:flex;flex-direction:column;gap:16px;margin-bottom:28px}.contact-btn{background:linear-gradient(135deg,#f05a241f,#f05a240f);border:2px solid rgba(240,90,36,.3);border-radius:14px;padding:18px 22px;color:#fff!important;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:16px;text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contact-btn:hover{background:linear-gradient(135deg,#f05a2440,#f05a241f);border-color:var(--sidebar-secondary);transform:translateY(-3px);box-shadow:0 12px 32px #f05a2466}.whatsapp-btn:hover{border-color:#25d366;box-shadow:0 12px 32px #25d36666}.email-btn:hover{border-color:#4285f4;box-shadow:0 12px 32px #4285f466}.btn-icon{font-size:2rem;flex-shrink:0}.btn-content{flex:1}.btn-label{display:block;font-weight:700;font-size:1.1rem;margin-bottom:4px;letter-spacing:.3px;color:#fff!important}.btn-detail{display:block;font-size:.9rem;color:#ffffffe6!important;font-weight:500}.contact-footer{text-align:center;border-top:2px solid rgba(240,90,36,.2);padding-top:24px}.close-btn{background:#f05a2426;border:2px solid rgba(240,90,36,.3);color:#fff!important;padding:14px 32px;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease;min-width:140px;font-size:.95rem;letter-spacing:.3px}.close-btn:hover{background:#f05a2440;border-color:var(--sidebar-secondary);transform:translateY(-2px);box-shadow:0 8px 24px #f05a244d}@media(max-width:600px){.contact-modal{width:95%;margin:20px}.contact-modal-header{padding:20px 24px}.contact-modal-content{padding:24px}.service-name{font-size:1.3rem}.contact-btn{padding:16px 18px}.btn-icon{font-size:1.8rem}}.vortex-sidebar *{color:inherit;visibility:visible!important;opacity:1!important;display:block!important}.vortex-user-card-refined{display:flex!important;flex-direction:row!important}.user-avatar-refined{display:flex!important}.user-info-refined{display:flex!important;flex-direction:column!important}.user-actions-refined{display:flex!important;flex-direction:row!important}.action-btn-refined{display:flex!important}.header-top-section{display:flex!important;flex-direction:row!important}.vortex-sidebar-close-refined{display:flex!important}.user-name-refined,.user-role-refined,.avatar-initial-refined{display:block!important}.vortex-sidebar h1,.vortex-sidebar h2,.vortex-sidebar h3,.vortex-sidebar h4,.vortex-sidebar h5,.vortex-sidebar h6,.vortex-sidebar p,.vortex-sidebar span,.vortex-sidebar div{color:#fff!important;visibility:visible!important;opacity:1!important}.sidebar-item{visibility:visible!important;opacity:1!important;display:block!important;color:#fff!important}.sidebar-item *{visibility:visible!important;opacity:1!important;color:#fff!important}.section-content{visibility:visible!important;opacity:1!important;display:flex!important;flex-direction:column!important;align-items:center!important}.section-content *{visibility:visible!important;opacity:1!important;color:#fff!important}.section-header{visibility:visible!important;opacity:1!important;display:flex!important;color:#fff!important}.section-header *{visibility:visible!important;opacity:1!important;color:#fff!important}.vortex-sidebar .section-title{font-size:1rem!important}.vortex-sidebar .section-icon{font-size:1.2rem!important}.vortex-sidebar .section-toggle{font-size:.8rem!important}.vortex-sidebar .section-count{font-size:.75rem!important}.vortex-sidebar .section-toggle,.vortex-sidebar .item-group{color:var(--sidebar-secondary)!important;visibility:visible!important;opacity:1!important}.vortex-sidebar .status-badge.available,.vortex-sidebar .status-badge.contract,.vortex-sidebar .role-badge,.vortex-sidebar .avatar-icon,.vortex-sidebar .btn-icon,.vortex-sidebar .logo-icon{color:#fff!important;visibility:visible!important;opacity:1!important}.item-icon{visibility:visible!important;opacity:1!important;color:#fff!important}.item-description{visibility:visible!important;opacity:1!important;color:#ffffffe6!important}.item-name{visibility:visible!important;opacity:1!important;color:#fff!important}.item-status{visibility:visible!important;opacity:1!important}.vortex-sidebar-section,.vortex-sidebar-categories{visibility:visible!important;opacity:1!important;display:block!important}.vortex-sidebar-categories *{visibility:visible!important;opacity:1!important}.vortex-section-icon{width:36px;height:36px;transition:all .3s ease;pointer-events:none}.section-header:hover .vortex-section-icon{transform:scale(1.1);filter:brightness(0) saturate(100%) invert(100%) drop-shadow(0 0 4px rgba(255,255,255,.3))}.vortex-point-icon{transition:all .3s ease;pointer-events:none}.sidebar-item:hover .vortex-point-icon{transform:scale(1.1);filter:brightness(0) saturate(100%) invert(27%) sepia(51%) saturate(2878%) hue-rotate(346deg) brightness(120%) contrast(97%) drop-shadow(0 0 2px rgba(240,90,36,.5))}.vortex-user-card-modern{position:relative!important;cursor:pointer}.vortex-user-card-modern:hover{transform:translateY(-3px) scale(1.02)!important;border-color:#f05a24b3!important;box-shadow:0 24px 72px #0009,0 12px 32px #f05a2480,inset 0 2px #ffffff40,inset 0 -2px #00000026!important}.user-avatar-premium{cursor:pointer}.user-avatar-premium:hover{transform:scale(1.08) rotate(3deg)!important;box-shadow:0 20px 50px #f05a2499,0 8px 20px #0006,inset 0 2px #ffffff80,inset 0 -2px #00000026!important}@keyframes premiumCardGlow{0%,to{box-shadow:0 16px 48px #0006,0 4px 12px #f05a2433,inset 0 1px #ffffff26,inset 0 -1px #0000001a}50%{box-shadow:0 20px 60px #00000080,0 6px 24px #f05a2459,inset 0 1px #fff3,inset 0 -1px #0000001a}}.vortex-user-card-modern{animation:premiumCardGlow 6s ease-in-out infinite}@media(max-width:600px){.vortex-user-card-modern{padding:16px 20px!important;min-height:70px!important;gap:14px!important}.user-avatar-premium{width:48px!important;height:48px!important}.user-name-premium{font-size:1rem!important}.user-role-premium{font-size:.65rem!important;padding:3px 8px!important}}@media(max-width:480px){.vortex-user-card-modern{padding:14px 18px!important;min-height:65px!important;gap:12px!important}.user-avatar-premium{width:44px!important;height:44px!important}.user-name-premium{font-size:.95rem!important}.user-role-premium{font-size:.6rem!important;padding:2px 6px!important}}.iframe-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--overlay-medium);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out;pointer-events:auto}.iframe-modal{width:100vw;height:100vh;background:transparent;border:none;box-shadow:none;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .4s cubic-bezier(.4,0,.2,1);position:relative;z-index:10000;border-radius:0}.iframe-modal-close-discrete{position:fixed;top:20px;right:20px;background:var(--overlay-dark);color:#fff;border:none;font-size:1.2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 2px 8px #0000004d;z-index:10001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2)}.iframe-modal-close-discrete:hover{background:#f25924e6;transform:scale(1.1);box-shadow:0 4px 12px #f2592466}.iframe-modal-close-discrete:active{transform:scale(.95)}.iframe-instructions-panel{position:fixed;top:80px;right:20px;width:260px;height:auto;background:var(--overlay-dark);border-radius:16px;border:2px solid var(--accent-orange);box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10002;animation:slideInRight .5s ease-out;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.iframe-instructions-panel.collapsed{width:60px;height:80px;transition:all .4s cubic-bezier(.4,0,.2,1)}.iframe-instructions-panel.collapsed .iframe-instructions-content,.iframe-instructions-panel.collapsed .iframe-close-app-btn{opacity:0;transform:translate(20px);pointer-events:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.iframe-instructions-content{padding:20px;color:#fff;transition:all .4s cubic-bezier(.4,0,.2,1);opacity:1;transform:translate(0)}.iframe-instructions-content h3{margin:0 0 12px;font-size:1.2rem;font-weight:600;color:#f25924;text-shadow:0 2px 4px rgba(0,0,0,.3)}.iframe-instructions-content p{margin:0 0 16px;font-size:.9rem;line-height:1.4;color:#e0e7ff;opacity:.9}.iframe-instructions-tips{display:flex;flex-direction:column;gap:8px}.iframe-instructions-tips span{font-size:.8rem;color:#fff;opacity:.8;border-left:2px solid rgba(242,89,36,.5);padding:4px 0 4px 8px}.iframe-close-app-btn{width:100%;background:linear-gradient(135deg,#f25924,#e74c3c);color:#fff;border:none;padding:16px 20px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #f259244d;border-top:1px solid rgba(255,255,255,.1);opacity:1;transform:translate(0)}.iframe-close-app-btn:hover{background:linear-gradient(135deg,#e74c3c,#d14a1a);transform:translateY(-1px);box-shadow:0 6px 16px #f2592466}.iframe-close-app-btn:active{transform:translateY(0)}.iframe-close-app-btn span:first-child{font-size:1.2rem}.iframe-instructions-toggle{position:absolute;top:12px;right:12px;background:#f25924cc;color:#fff;border:none;font-size:1rem;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #f259244d;z-index:1004}.iframe-instructions-toggle:hover{background:#f25924;transform:scale(1.1);box-shadow:0 4px 12px #f2592466}.iframe-instructions-toggle:active{transform:scale(.95)}.iframe-instructions-panel.collapsed .iframe-instructions-toggle{right:14px;top:24px;background:#f25924}.iframe-modal-content{width:100%;height:100vh;position:relative;overflow:hidden;background:#fff;z-index:10001}.iframe-dashboard{width:100%;height:100%;border:none;background:#fff;position:relative;z-index:10002;display:block;opacity:1;transition:opacity .3s ease}.iframe-instructions-panel{position:fixed;top:80px;right:20px;width:260px;height:auto;background:var(--overlay-dark);border-radius:16px;border:2px solid var(--accent-orange);box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10003;animation:slideInRight .5s ease-out;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);pointer-events:auto}.iframe-loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fffffff2;color:var(--primary-teal-dark);z-index:10}.iframe-loading-spinner{width:48px;height:48px;border:4px solid rgba(240,90,36,.2);border-top:4px solid var(--accent-orange);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.iframe-loading p{margin:0;font-size:1.1rem;font-weight:500;color:var(--primary-teal-dark)}.iframe-error{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fffffff2;color:#e74c3c;z-index:10;padding:24px;text-align:center}.iframe-error p{margin:0 0 20px;font-size:1.1rem;font-weight:500}.iframe-error button{background:linear-gradient(135deg,#f25924,#e74c3c);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #f259244d}.iframe-error button:hover{background:linear-gradient(135deg,#e74c3c,#d14a1a);transform:translateY(-1px);box-shadow:0 6px 16px #f2592466}@keyframes slideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.iframe-modal .iframe-dashboard{position:relative!important;z-index:10!important;background:transparent!important}.iframe-modal *,.iframe-modal .iframe-dashboard *{pointer-events:auto}@media(max-width:768px){.iframe-modal{width:100vw;height:100vh;border-radius:0}.iframe-modal-close-discrete{top:15px;right:15px;width:36px;height:36px;font-size:1.1rem}.iframe-instructions-panel{top:70px;right:15px;width:240px}.iframe-instructions-panel.collapsed{width:50px;height:70px}.iframe-instructions-panel.collapsed .iframe-instructions-toggle{right:9px;top:19px}.iframe-instructions-content{padding:16px}.iframe-instructions-content h3{font-size:1.1rem}.iframe-instructions-content p{font-size:.85rem}.iframe-close-app-btn{padding:14px 16px;font-size:.95rem}}@media(max-width:480px){.iframe-modal{width:100vw;height:100vh;border-radius:0}.iframe-modal-close-discrete{top:10px;right:10px;width:32px;height:32px;font-size:1rem}.iframe-instructions-panel{top:60px;right:10px;width:200px}.iframe-instructions-panel.collapsed{width:45px;height:60px}.iframe-instructions-panel.collapsed .iframe-instructions-toggle{right:6px;top:14px}.iframe-instructions-content{padding:12px}.iframe-instructions-content h3{font-size:1rem}.iframe-instructions-content p{font-size:.8rem}.iframe-close-app-btn{padding:12px 14px;font-size:.9rem}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.vortex-map{flex:1 1 auto;width:100%;height:100%;min-height:0;border-radius:0;box-shadow:none;margin:0;background:transparent}.leaflet-container{height:100%!important;width:100%!important;min-height:300px!important;min-width:300px!important;z-index:100;position:relative!important}.leaflet-popup-pane,.leaflet-popup{z-index:1000000!important;position:absolute!important}.leaflet-popup-content-wrapper{border-radius:12px!important;box-shadow:0 8px 32px #0003!important;border:none!important;background:linear-gradient(135deg,var(--white) 0%,var(--light-gray) 100%)!important;z-index:1000000!important;position:relative!important}.leaflet-popup-tip{background:linear-gradient(135deg,var(--white) 0%,var(--light-gray) 100%)!important;border:none!important;box-shadow:0 4px 16px #0000001a!important;z-index:1000001!important;position:relative!important}.leaflet-popup-content{margin:0!important;border-radius:12px!important;overflow:hidden!important;padding:0!important;z-index:1000000!important;pointer-events:auto!important;position:relative!important}.leaflet-popup-close-button{z-index:1001!important;color:var(--primary-teal-dark)!important;font-size:18px!important;font-weight:700!important;padding:8px!important;background:#ffffffe6!important;border-radius:50%!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 2px 8px #00000026!important;top:8px!important;right:8px!important}.leaflet-popup-close-button:hover{background:#fff!important;color:var(--accent-orange)!important;transform:scale(1.1)!important;transition:all .2s ease!important}.custom-marker{z-index:1000!important}.point-labels-container{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;pointer-events:none!important;z-index:1!important;overflow:visible!important}.leaflet-container .point-label-tag{position:absolute!important;pointer-events:none!important;z-index:2!important}.leaflet-container>.point-labels-container{z-index:1!important}.leaflet-popup-pane{z-index:1000000!important;position:absolute!important;isolation:isolate!important;transform:translateZ(0)!important}.leaflet-popup{z-index:1000000!important;position:absolute!important}.leaflet-popup-content-wrapper{z-index:1000000!important;position:relative!important}.leaflet-container{transition:all .3s ease!important}.leaflet-map-pane{transition:all .3s ease!important;z-index:1!important}.leaflet-marker-pane{z-index:600!important}.leaflet-overlay-pane{z-index:400!important}.leaflet-popup{transition:all .2s ease!important;will-change:margin-top!important;display:block!important;visibility:visible!important;opacity:1!important;z-index:999999!important;position:absolute!important}.oil-field-popup{z-index:999999!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.vortex-centering-msg,.centering-icon,.centering-text{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}.leaflet-popup-content-wrapper{box-shadow:0 8px 24px #00000026!important}@media(max-width:768px){.leaflet-container{min-width:200px!important;min-height:200px!important}}@media(max-width:600px){.leaflet-container{min-width:120px!important;min-height:120px!important}}@media(max-width:480px){.leaflet-container{min-width:80px!important;min-height:80px!important}}.vortex-capture-panel{position:absolute;top:24px;right:32px;z-index:440}.vortex-capture-panel button{background:#1976d2;color:#fff;border:none;border-radius:6px;padding:8px 18px;font-size:1rem;font-weight:500;cursor:pointer;box-shadow:0 2px 8px #0000001a;transition:background .18s}.vortex-capture-panel button:hover{background:#00bcd4;color:#18304b}.vortex-capture-msg{position:absolute;top:18px;left:50%;transform:translate(-50%);background:#18304b;color:#fff;font-size:1.1rem;font-weight:600;padding:8px 24px;border-radius:8px;box-shadow:0 2px 8px #00000021;z-index:500;-webkit-user-select:none;user-select:none;pointer-events:none;letter-spacing:.5px}.vortex-map-controls{position:absolute;top:24px;left:24px;display:flex;flex-direction:column;gap:10px;z-index:400}.vortex-map-controls--nocapture{display:none!important}.vortex-map-btn{background:var(--primary-teal);border:none;border-radius:8px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:background .2s,box-shadow .2s;outline:none;padding:0;opacity:1;animation:fadeInBtn .18s}.vortex-map-btn:hover,.vortex-map-btn:focus,.vortex-map-btn-tools.open{background:var(--accent-orange);box-shadow:0 4px 12px #00000029}.vortex-map-btn-icon{color:var(--white);font-size:1.5rem;font-weight:700;pointer-events:none}.vortex-map-btn-tool{animation:fadeInBtn .18s}@keyframes fadeInBtn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vortex-map-selector{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;max-width:90vw;background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 20px 60px #0000004d;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:10000;animation:modalSlideIn .3s ease-out;max-height:80vh;overflow:hidden}.vortex-map-selector:before{content:"";position:fixed;inset:0;background:#00000080;z-index:-1;animation:fadeIn .3s ease-out}.vortex-map-selector-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(0,0,0,.1);background:linear-gradient(135deg,var(--primary-teal-dark) 0%,#3a3540 100%);color:#fff;border-radius:16px 16px 0 0}.vortex-map-selector-title{font-weight:600;font-size:16px}.vortex-map-selector-close{background:#ffffff1a;border:none;color:#fff;font-size:18px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.vortex-map-selector-close:hover{background:#fff3;transform:scale(1.1)}.vortex-map-selector-options{max-height:400px;overflow-y:auto;padding:16px}.vortex-map-option{display:flex;align-items:center;width:100%;padding:16px 20px;margin:8px 0;background:#fff;border:2px solid rgba(0,0,0,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left}.vortex-map-option:hover{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-color:var(--primary-teal-dark);transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.vortex-map-option.active{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,#3a3540 100%);color:#fff;border-color:var(--accent-orange);box-shadow:0 8px 24px #f259244d}.vortex-map-option-icon{font-size:24px;margin-right:16px;width:32px;text-align:center}.vortex-map-option-content{flex:1}.vortex-map-option-name{font-weight:600;font-size:15px;margin-bottom:4px}.vortex-map-option-description{font-size:12px;opacity:.7;line-height:1.4}.vortex-map-option-check{font-size:18px;color:var(--accent-orange);font-weight:700}.vortex-map-option.active .vortex-map-option-check{color:#fff}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}.vortex-map-selector-options::-webkit-scrollbar{width:8px}.vortex-map-selector-options::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.vortex-map-selector-options::-webkit-scrollbar-thumb{background:var(--overlay-light);border-radius:4px}.vortex-map-selector-options::-webkit-scrollbar-thumb:hover{background:var(--overlay-medium)}@media(max-width:768px){.vortex-map-selector{width:95vw;max-height:85vh}.vortex-map-selector-header{padding:16px 20px}.vortex-map-selector-options{padding:12px}.vortex-map-option{padding:14px 16px}}.vortex-map-btn-tool.active{background:linear-gradient(135deg,var(--accent-orange) 0%,#e74c3c 100%)!important;color:#fff!important;box-shadow:0 4px 12px #f2592466!important;transform:translateY(-1px)!important}.vortex-map-btn-tool.active:hover{background:linear-gradient(135deg,#e74c3c,#c0392b)!important;box-shadow:0 6px 16px #f2592480!important}.vortex-map-theme-container{display:flex;align-items:center;margin-top:8px;animation:slideInDown .4s cubic-bezier(.4,0,.2,1) forwards;opacity:0}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vortex-coordinates{position:absolute;bottom:10px;left:20px;z-index:1000;background:var(--overlay-dark);border-radius:6px;padding:6px 10px;box-shadow:0 2px 8px #0003;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.1);color:#fff;font-family:Courier New,monospace;font-size:12px;font-weight:500;min-width:auto}.grid-label{background:#000000b3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:3px;padding:2px 6px;font-size:10px;font-family:Courier New,monospace;font-weight:700;text-align:center;white-space:nowrap;pointer-events:none;z-index:1000}.grid-label:hover{background:#000000e6}@media(max-width:768px){.vortex-coordinates{bottom:8px;left:10px;padding:4px 8px;font-size:11px}}.service-point-marker{background:transparent;border:none;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.service-point-icon{width:78px;height:78px;border-radius:0;border:none;background:transparent;box-shadow:none;display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;padding:0;box-sizing:border-box;overflow:visible;will-change:transform,box-shadow;transform:translateZ(0);backface-visibility:hidden}.service-point-icon.service-point-forecast,.service-point-icon.service-point-metocean,.service-point-icon.service-point-rig,.service-point-icon.service-point-route{background:transparent;border:none;border-radius:0;box-shadow:none;width:78px;height:78px;overflow:visible}.service-point-icon.service-point-forecast .service-point-image,.service-point-icon.service-point-metocean .service-point-image,.service-point-icon.service-point-rig .service-point-image,.service-point-icon.service-point-route .service-point-image{width:78px;height:78px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}.service-point-icon:hover{transform:scale(1.1)}.service-point-icon:hover .service-point-image{filter:drop-shadow(0 4px 10px rgba(0,0,0,.4))}.service-point-badge{font-size:18px;line-height:1;position:relative;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.service-point-image{width:78px;height:78px;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35));pointer-events:none;will-change:transform;transform:translateZ(0);backface-visibility:hidden;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.service-point-popup{z-index:1000000!important;position:absolute!important}.service-point-popup .leaflet-popup-content-wrapper{border-radius:16px;padding:0;overflow:visible!important;box-shadow:0 20px 60px #00000026,0 8px 24px #0000001a,0 0 0 1px #0000000d;background:#fff;border:none;position:relative;z-index:1000000!important}.service-point-popup .leaflet-popup-content{overflow:visible!important;position:relative}.service-point-popup .leaflet-popup-tip{background:#fff;box-shadow:0 2px 8px #0000001a}.service-point-popup.leaflet-popup .leaflet-popup-close-button,.service-point-popup .leaflet-popup-content-wrapper .leaflet-popup-close-button{position:absolute!important;top:12px!important;right:12px!important;width:32px!important;height:32px!important;font-size:20px!important;color:#a7aea5!important;padding:0!important;margin:0!important;display:block!important;transition:all .2s ease!important;z-index:1000001!important;pointer-events:auto!important;cursor:pointer!important;text-decoration:none!important;line-height:32px!important;text-align:center!important;font-family:Arial,sans-serif!important;background:#ffffffe6!important;border-radius:8px!important;border:none!important;outline:none!important;box-shadow:0 2px 8px #0000001a!important}.service-point-popup.leaflet-popup .leaflet-popup-close-button:hover,.service-point-popup .leaflet-popup-content-wrapper .leaflet-popup-close-button:hover{color:#00242f!important;background:#fff!important;transform:scale(1.1)!important;box-shadow:0 4px 12px #00000026!important}.service-point-popup.leaflet-popup .leaflet-popup-close-button:active,.service-point-popup .leaflet-popup-content-wrapper .leaflet-popup-close-button:active{transform:scale(.95)!important}.service-point-popup-content{padding:28px 24px 24px;min-width:340px;max-width:380px;font-family:var(--font-primary);position:relative}.service-popup-close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;background:#ffffffe6;border-radius:8px;color:#a7aea5;font-size:24px;font-weight:300;line-height:1;cursor:pointer;z-index:1000002;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.service-popup-close-btn:hover{background:#fff;color:#00242f;transform:scale(1.1);box-shadow:0 4px 12px #00000026}.service-popup-close-btn:active{transform:scale(.95)}.service-point-header{margin-bottom:16px}.service-point-name{margin:0 0 10px;font-size:1.375rem;font-weight:600;color:#00242f;font-family:var(--font-primary);letter-spacing:-.02em;line-height:1.2}.service-point-group{display:inline-block;font-size:.6875rem;color:#028a7e;background:#03a69a14;padding:4px 10px;border-radius:6px;font-weight:500;font-family:var(--font-primary);letter-spacing:.3px;text-transform:uppercase}.service-point-coordinates{margin:16px 0 20px;padding:12px 16px;background:linear-gradient(135deg,#f8f9f8,#f3f4f6);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:16px;border:1px solid #e5e7eb}.coordinate-item{display:flex;flex-direction:column;align-items:center;gap:4px}.coordinate-label{font-size:.625rem;font-weight:600;color:#a7aea5;letter-spacing:.8px;text-transform:uppercase;font-family:var(--font-primary)}.coordinate-value{font-size:.9375rem;font-weight:600;color:#03a69a;font-family:Courier New,monospace;letter-spacing:.3px}.coordinate-divider{font-size:1.25rem;color:#e5e7eb;font-weight:300}.service-point-services{margin-top:20px}.services-title{margin:0 0 10px;font-size:.6875rem;font-weight:600;color:#a7aea5;text-transform:uppercase;letter-spacing:1.2px;font-family:var(--font-primary)}.services-list{display:flex;flex-direction:column;gap:8px}.service-button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;font-family:var(--font-primary);position:relative;min-height:42px;box-sizing:border-box}.service-button:hover{background:#f8f9f8;border-color:#03a69a;transform:translateY(-1px);box-shadow:0 2px 8px #03a69a14}.service-button:active{transform:translateY(0);box-shadow:0 1px 4px #03a69a0f}.service-button:focus{outline:2px solid #03a69a;outline-offset:2px}.service-name{font-weight:500;color:#00242f;font-size:.875rem;font-family:var(--font-primary);letter-spacing:-.01em;line-height:1.5;text-transform:none;flex:1;text-align:left;margin:0;padding:0;display:flex;align-items:center;min-height:20px}.service-arrow{color:#03a69a;font-size:1.125rem;font-weight:400;flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1);opacity:.5;line-height:1;display:flex;align-items:center;justify-content:center;margin:0;padding:0;width:20px;height:20px}.service-button:hover .service-arrow{transform:translate(3px);opacity:.7}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.service-point-popup .leaflet-popup-content-wrapper{animation:popupFadeIn .25s cubic-bezier(.4,0,.2,1)}@media(max-width:640px){.service-point-popup-content{min-width:300px;max-width:320px;padding:24px 20px 20px}.service-point-name{font-size:1.25rem}.service-button{padding:10px 12px;gap:10px}.service-icon{width:32px;height:32px}}@media(prefers-reduced-motion:reduce){.service-button,.service-icon,.service-arrow,.service-point-icon{transition:none}.service-point-popup .leaflet-popup-content-wrapper{animation:none}}.service-button:focus-visible{outline:3px solid #03a69a;outline-offset:2px}.vortex-footer{width:100vw;background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 100%);color:var(--secondary-sage-light);border-top:3px solid var(--accent-orange);font-size:.95rem;padding:10px 0 8px;text-align:center;position:fixed;left:0;bottom:0;z-index:200;box-shadow:0 -2px 8px var(--overlay-medium)}.vortex-footer-content{max-width:1200px;margin:0 auto;padding:0 16px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}.vortex-footer-title{color:var(--accent-orange);font-weight:700;letter-spacing:1px;text-decoration:none;transition:all .2s ease}.vortex-footer-title:hover{color:var(--accent-orange);text-decoration:underline;opacity:.9}.vortex-footer-link{color:inherit;font-weight:inherit;text-decoration:none;transition:all .2s ease}.vortex-footer-link:hover{color:var(--accent-orange);text-decoration:underline;opacity:.9}@media(max-width:768px){.vortex-footer-content{flex-direction:column;gap:4px;font-size:.9rem}}@media(max-width:600px){.vortex-footer-content{flex-direction:column;gap:2px;font-size:.85rem;align-items:flex-start}.vortex-footer-sep{display:none}.vortex-footer-title,.vortex-footer-content span{display:block;width:100%;text-align:left}}@media(max-width:480px){.vortex-footer-content{font-size:.8rem;padding:0 4px}.vortex-footer{padding:6px 0 4px}}@media(max-width:770px){.vortex-footer-sep{display:none}}.forecast-ts-charts{display:flex;flex-direction:column;gap:0;font-family:var(--font-primary)}.fts-dashboard-content{display:flex;gap:var(--space-6);background:var(--white);border-radius:var(--rounded-md);padding:var(--space-6);box-shadow:var(--shadow-sm)}.fts-left-panel{flex:1;display:flex;flex-direction:column;min-width:0}.fts-charts-area{flex:1;position:relative;min-width:0;padding-top:24px}.fts-mini-charts{display:flex;flex-direction:column;gap:0;min-width:0;background:var(--white);border-radius:var(--rounded-base);overflow:hidden;border:1px solid rgba(148,163,184,.12)}.fts-mini-chart-item{display:flex;min-height:120px;border-bottom:1px solid rgba(148,163,184,.1)}.fts-mini-chart-label{width:88px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-2);border-right:3px solid;background:#f8fafc80}.fts-mini-chart-label-text{font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.4px;line-height:var(--line-height-tight);text-align:center;word-break:break-word}.fts-mini-chart-plot{flex:1;position:relative;min-width:0}.fts-chart-hover-line{position:absolute;top:0;bottom:0;width:1px;background:#0f766e4d;pointer-events:none;z-index:50}.fts-chart-hover-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--white);border:2px solid;pointer-events:none;z-index:52;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #fffc,0 1px 3px #00000026}.fts-chart-hover-value{position:absolute;padding:2px 8px;background:#fffffff2;color:var(--dark-gray);font-size:11px;font-weight:var(--font-weight-bold);border-radius:var(--rounded-sm);pointer-events:none;z-index:51;white-space:nowrap;box-shadow:0 1px 4px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.fts-chart-hover-timestamp{position:absolute;top:0;padding:3px 10px;background:var(--dark-gray);color:var(--white);font-size:11px;font-weight:var(--font-weight-medium);border-radius:var(--rounded-sm);pointer-events:none;z-index:52;white-space:nowrap;box-shadow:0 2px 6px #0003;transform:translate(-50%);letter-spacing:.3px}.fts-mini-chart-item:last-child{min-height:160px;border-bottom:none}.fts-right-panel{width:550px;min-width:0;display:flex;flex-direction:column;background:transparent;border-radius:var(--rounded-md);padding:var(--space-2) var(--space-4) var(--space-4) var(--space-4)}.fts-compass-header{display:flex;justify-content:center;align-items:center;padding:var(--space-2) 0 var(--space-3) 0;margin-bottom:var(--space-2);border-bottom:2px solid var(--primary-teal-alpha-10)}.fts-header-info-group{display:flex;gap:var(--space-8);align-items:center}.fts-header-info-item{text-align:center;position:relative}.fts-header-info-item:not(:last-child):after{content:"";position:absolute;right:-16px;top:50%;transform:translateY(-50%);width:1px;height:30px;background:var(--primary-teal-alpha-20)}.fts-info-label{margin:0 0 var(--space-1) 0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--secondary-sage);text-transform:uppercase;letter-spacing:.5px}.fts-info-value{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--primary-teal)}.fts-compass-container{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:0 var(--space-4) var(--space-4) var(--space-4);padding-top:0}.fts-charts-empty{display:flex;align-items:center;justify-content:center;padding:var(--space-16) var(--space-6);text-align:center;background:var(--white);border-radius:var(--rounded-md);box-shadow:var(--shadow-sm)}.fts-charts-empty p{font-size:var(--font-size-base);color:var(--secondary-sage);margin:0}@media(max-width:1200px){.fts-dashboard-content{flex-direction:column;gap:var(--space-6)}.fts-left-panel{width:100%}.fts-right-panel{width:100%;min-width:auto;max-width:600px;margin:0 auto}}@media(max-width:768px){.fts-dashboard-content{padding:var(--space-4)}.fts-mini-charts{min-height:400px}.fts-charts-area{padding-top:24px}.fts-mini-chart-label{width:64px;padding:var(--space-1)}.fts-mini-chart-label-text{font-size:9px}.fts-right-panel{width:100%;max-width:100%;padding:var(--space-2) var(--space-3) var(--space-3) var(--space-3)}.fts-compass-header{padding:6px 0 10px;margin-bottom:6px}.fts-header-info-group{gap:var(--space-6)}.fts-info-label{font-size:10px}.fts-info-value{font-size:var(--font-size-base)}}@media(max-width:480px){.fts-dashboard-content{padding:var(--space-3)}.fts-right-panel{padding:var(--space-2) var(--space-3) var(--space-3) var(--space-3)}.fts-header-info-group{gap:var(--space-4);flex-direction:row}.fts-info-label{font-size:9px}.fts-info-value{font-size:var(--font-size-sm)}}@media print{.fts-dashboard-content{box-shadow:none;border:1px solid var(--secondary-sage-alpha-20)}.fts-right-panel{background:var(--white)}}.mc-wrapper{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.mc-svg{width:100%;max-width:480px;aspect-ratio:1;overflow:visible;filter:drop-shadow(0 4px 20px rgba(0,0,0,.28));border-radius:50%}.mc-label{font-family:var(--font-primary, system-ui, -apple-system, "Segoe UI", sans-serif);-webkit-user-select:none;user-select:none;pointer-events:none}.mc-arrow-group{transition:opacity .3s ease}.mc-arrow-line{transition:stroke-width .25s ease}.mc-vessel-symbol{transition:transform .5s cubic-bezier(.4,0,.2,1)}.mc-heading-group{transition:opacity .3s ease}.mc-legend{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;padding:8px 12px 2px;border-top:1px solid rgba(30,38,56,.06)}.mc-legend-item{display:flex;align-items:center;gap:5px}.mc-legend-arrow{flex-shrink:0}.mc-legend-label{font-size:12px;font-weight:600;letter-spacing:.3px;font-family:var(--font-primary, system-ui, sans-serif)}@media(max-width:768px){.mc-svg{max-width:360px}.mc-legend{gap:10px}.mc-legend-label{font-size:11px}}@media(max-width:480px){.mc-svg{max-width:280px}.mc-legend{gap:8px;padding:4px 8px 0}.mc-legend-label{font-size:10px}}@media print{.mc-svg{filter:none}}.forecast-dashboard{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#f8f9fa,#e9ecef,#dee2e6);z-index:1000;overflow-y:auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;animation:fadeIn .3s ease-out}.forecast-content{padding:24px;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:20px;background:transparent}.forecast-header-container{position:sticky;top:0;z-index:100;background:linear-gradient(180deg,#2f2b36,#1a1a2e);box-shadow:0 6px 20px #00000040;border-bottom:3px solid #f25924}.forecast-header{background:transparent!important;padding:12px 28px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:16px}.forecast-dashboard .forecast-header{background:transparent!important}.forecast-title{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.vortex-logo{height:70px;width:auto;filter:brightness(0) invert(1);opacity:.95;transition:all .3s ease;flex-shrink:0}.vortex-logo:hover{opacity:1;transform:scale(1.08)}.title-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.forecast-title h2{color:#fff!important;margin:0;font-size:1.35rem;font-weight:600;letter-spacing:.3px;text-shadow:0 2px 8px rgba(0,0,0,.4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forecast-header .forecast-title h2{color:#fff!important}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.source-badge,.age-badge{padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:1px solid;white-space:nowrap}.source-badge.api{background:#4caf5033;color:#4caf50;border-color:#4caf5066}.source-badge.cache{background:#ffc10733;color:#ffc107;border-color:#ffc10766}.source-badge.offline{background:#f4433633;color:#f44336;border-color:#f4433666}.age-badge.fresh{background:#4caf5033;color:#4caf50;border-color:#4caf5066}.age-badge.medium{background:#ffc10733;color:#ffc107;border-color:#ffc10766}.age-badge.old{background:#f4433633;color:#f44336;border-color:#f4433666}.refresh-btn{background:transparent;color:#ffffff80;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:0;font-size:.85rem;cursor:pointer;transition:all .3s ease;min-width:32px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.refresh-btn:hover:not(:disabled){background:#ffffff14;color:#ffffffe6;border-color:#ffffff4d;transform:rotate(180deg)}.refresh-btn:disabled{opacity:.3;cursor:not-allowed}.close-btn{background:transparent;color:#ffffff80;border:1px solid rgba(255,255,255,.15);min-width:32px;width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:16px;font-weight:400;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.close-btn:hover{background:#f2592426;color:#fff;border-color:#f2592466;transform:scale(1.05)}.forecast-tabs{display:flex;gap:0;padding:0 28px;margin:0;background:transparent;flex-wrap:wrap}.tab-btn{flex:0 0 auto;min-width:auto;padding:12px 20px;border:none;background:transparent;color:#ffffff8c;cursor:pointer;font-weight:500;font-size:.88rem;transition:all .3s ease;white-space:nowrap;position:relative;letter-spacing:.3px;border-bottom:2px solid transparent}.tab-btn:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:#f25924;transform:scaleX(0);transition:transform .3s ease;transform-origin:center}.tab-btn:hover:not(.active){color:#ffffffe6}.tab-btn:hover:not(.active):after{transform:scaleX(.5)}.tab-btn.active{color:#fff;font-weight:600}.tab-btn.active:after{transform:scaleX(1)}.forecast-current{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.forecast-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:2px solid rgba(242,89,36,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.forecast-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px #0000001f;border-color:#f259244d}.forecast-card h3{color:#2f2b36;margin:0 0 20px;font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:2px solid rgba(242,89,36,.2)}.forecast-card h4{color:#495057;margin:12px 0 8px;font-size:.95rem;font-weight:600}.forecast-value{color:#2f2b36;font-size:2rem;font-weight:700;margin:8px 0;text-shadow:0 1px 2px rgba(0,0,0,.05)}.forecast-unit{color:#6c757d;font-size:.85rem;font-weight:500;margin-top:4px}.forecast-complete{display:flex;flex-direction:column;gap:24px;width:100%}.collapse-icon{font-size:1.1rem;font-weight:700;transition:all .3s ease;margin-left:auto;opacity:.8}.collapse-icon.expanded{transform:rotate(0)}.collapse-icon.collapsed{transform:rotate(180deg)}.forecast-tabular{display:flex;flex-direction:column;gap:24px;width:100%}.tabular-section{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;border:2px solid rgba(0,0,0,.05);transition:all .3s ease}.tabular-section:hover{transform:translateY(-3px);box-shadow:0 8px 32px #0000001f}.tabular-header{background:linear-gradient(135deg,#2f2b36,#3a3540);color:#fff;padding:18px 24px;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between}.tabular-header:hover{background:linear-gradient(135deg,#3a3540,#4a4550);padding-left:28px}.tabular-header h3{margin:0;font-size:1.3rem;font-weight:700;display:flex;align-items:center;gap:10px;color:#fff;padding:0;border:none;background:none}.tabular-table{padding:24px;overflow-x:auto;animation:slideDown .3s ease-out}.tabular-table table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 12px #0000000f}.tabular-table th{background:linear-gradient(135deg,#f25924,#e74c3c);color:#fff;padding:14px 16px;text-align:left;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.tabular-table td{padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.05);color:#2f2b36;font-size:.85rem}.tabular-table tbody tr{transition:background .2s ease}.tabular-table tbody tr:nth-child(2n){background:#f8f9fa80}.tabular-table tbody tr:hover{background:#f2592414}.status-badge{padding:4px 10px;border-radius:12px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1.5px solid;white-space:nowrap}.status-badge.status-normal,.status-badge.status-calm{background:#28a74526;color:#28a745;border-color:#28a74566}.status-badge.status-moderate{background:#ffc10726;color:#f39c12;border-color:#ffc10766}.status-badge.status-high{background:#dc354526;color:#dc3545;border-color:#dc354566}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:40px 20px;text-align:center}.loading-spinner{width:60px;height:60px;border:4px solid rgba(242,89,36,.2);border-top-color:#f25924;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:20px}.loading-container p,.error-container p{color:#2f2b36;font-size:1.1rem;font-weight:600;margin:8px 0}.error-container p{color:#e74c3c}.error-actions{display:flex;gap:12px;margin-top:24px}.error-actions button{background:linear-gradient(135deg,#f25924,#e74c3c);color:#fff;border:none;padding:12px 24px;border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #f259244d}.error-actions button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #f2592466}.error-actions .secondary-btn{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 4px 12px #6c757d4d}.error-actions .secondary-btn:hover{box-shadow:0 6px 16px #6c757d66}.error-details{margin-top:20px;padding:16px;background:#6c757d1a;border-radius:8px;font-size:.8rem;color:#6c757d}.forecast-polar-charts,.forecast-pdf-report{padding:24px;background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 4px 20px #00000014;border:2px solid rgba(0,0,0,.05)}.pdf-report-container{max-width:800px;margin:0 auto}.pdf-report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:16px;border-bottom:2px solid rgba(242,89,36,.2)}.pdf-report-header h3{margin:0;color:#2f2b36;font-size:1.4rem;font-weight:700}.pdf-report-content{display:flex;flex-direction:column;gap:24px}.pdf-info{background:#f2592414;padding:24px;border-radius:12px;border-left:4px solid #f25924}.pdf-info h4{margin:0 0 16px;color:#2f2b36;font-size:1.1rem;font-weight:700}.pdf-info ul{margin:0;padding-left:24px}.pdf-info li{margin-bottom:8px;color:#495057;font-size:.9rem;line-height:1.6}.pdf-actions{text-align:center;padding:32px;background:#ffffffe6;border-radius:12px;border:2px dashed rgba(242,89,36,.3)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:5000px}}.forecast-dashboard::-webkit-scrollbar{width:10px}.forecast-dashboard::-webkit-scrollbar-track{background:#2f2b3614}.forecast-dashboard::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#f25924,#e74c3c);border-radius:5px}.forecast-dashboard::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#e74c3c,#c0392b)}@media(min-width:1400px){.forecast-content{max-width:1600px;padding:24px 40px}}@media(max-width:1024px){.forecast-header-container{box-shadow:0 4px 16px #0003}.forecast-header{padding:10px 24px}.forecast-title h2{font-size:1.25rem}.vortex-logo{height:44px}.header-actions{gap:6px}.refresh-btn,.close-btn{min-width:30px;width:30px;height:30px;font-size:.8rem}.close-btn{font-size:15px}.forecast-tabs{padding:0 24px}.tab-btn{padding:10px 18px;font-size:.85rem}.forecast-content{padding:16px 20px}.forecast-current{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}}@media(max-width:768px){.forecast-header-container{box-shadow:0 3px 12px #0003}.forecast-header{padding:10px 16px;gap:12px}.forecast-title{flex:1}.forecast-title h2{font-size:1.1rem}.vortex-logo{height:42px}.header-actions{gap:6px}.refresh-btn,.close-btn{min-width:28px;width:28px;height:28px;font-size:.75rem}.close-btn{font-size:14px}.forecast-content{padding:12px 16px;gap:16px}.forecast-tabs{padding:0 18px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.forecast-tabs::-webkit-scrollbar{display:none}.tab-btn{padding:12px 18px;font-size:.85rem}.tab-btn:after{bottom:-1px}.forecast-current{grid-template-columns:1fr;gap:16px}.forecast-card{padding:20px}.forecast-value{font-size:1.6rem}.tabular-header{padding:14px 16px}.tabular-header h3{font-size:1.1rem}.tabular-table{padding:16px}.tabular-table table{font-size:.8rem}.tabular-table th,.tabular-table td{padding:10px 12px}.data-source-indicator{flex-wrap:wrap;gap:6px}.source-badge,.age-badge{font-size:.65rem;padding:3px 6px}}@media(max-width:480px){.forecast-header{padding:8px 14px;gap:8px}.forecast-title h2{font-size:1rem}.vortex-logo{height:38px}.header-actions{gap:4px}.refresh-btn,.close-btn{min-width:26px;width:26px;height:26px;font-size:.7rem}.close-btn{font-size:13px}.forecast-tabs{padding:0 14px}.tab-btn{padding:10px 14px;font-size:.78rem}.forecast-value{font-size:1.4rem}}.weather-alerts-container{position:fixed;top:80px;right:20px;z-index:250;display:flex;flex-direction:column;align-items:flex-end;transition:all .3s cubic-bezier(.4,0,.2,1)}.vortex-app-wrapper.sidebar-open .weather-alerts-container{right:400px}@media(max-width:768px){.weather-alerts-container{right:10px;top:70px}.vortex-sidebar:not(.hide)~.vortex-main .weather-alerts-container,.vortex-sidebar:not(.hide)~* .weather-alerts-container{right:calc(85vw + 10px)}}.weather-alerts-pulse-indicator{position:absolute;top:0;left:0;width:48px;height:48px;border-radius:50%;z-index:0;pointer-events:none}.critical-pulse{background:radial-gradient(circle,rgba(220,53,69,.4) 0%,transparent 70%);animation:pulse-critical 2s ease-in-out infinite}.warning-pulse{background:radial-gradient(circle,rgba(255,193,7,.4) 0%,transparent 70%);animation:pulse-warning 2.5s ease-in-out infinite}@keyframes pulse-critical{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.4);opacity:.2}}@keyframes pulse-warning{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.3);opacity:.2}}.weather-alerts-toggle{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#f05a24,#f25924);border:2px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #f05a2466;transition:all .3s ease;position:relative;z-index:1;overflow:visible}.weather-alerts-toggle.critical{background:linear-gradient(135deg,#dc3545,#c82333);border-color:#fff6;box-shadow:0 4px 16px #dc354599,0 0 20px #dc35454d;animation:glow-critical 2s ease-in-out infinite}@keyframes glow-critical{0%,to{box-shadow:0 4px 16px #dc354599,0 0 20px #dc35454d}50%{box-shadow:0 4px 20px #dc3545cc,0 0 30px #dc354580}}.weather-alerts-toggle.warning{background:linear-gradient(135deg,#ffc107,#ff9800);border-color:#fff6;box-shadow:0 4px 16px #ffc10780,0 0 15px #ffc10733}.weather-alerts-toggle:hover{transform:scale(1.1)}.weather-alerts-toggle.critical:hover{box-shadow:0 6px 20px #dc3545cc,0 0 35px #dc354599}.weather-alerts-toggle.warning:hover{box-shadow:0 6px 18px #ffc10799,0 0 25px #ffc1074d}.weather-alerts-toggle:active{transform:scale(.95)}.weather-alerts-status-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 4px #0000004d;animation:blink-dot 1.5s ease-in-out infinite}.weather-alerts-toggle.critical .weather-alerts-status-dot{background:#ffeb3b;box-shadow:0 0 6px #ffeb3bcc;animation:blink-dot-critical 1s ease-in-out infinite}.weather-alerts-toggle.warning .weather-alerts-status-dot{background:#fff;box-shadow:0 0 4px #fff9}@keyframes blink-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes blink-dot-critical{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.2)}}.weather-alerts-icon{font-size:24px;line-height:1}.weather-alerts-badge{position:absolute;top:-4px;right:-4px;background:#dc3545;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid white;box-shadow:0 2px 4px #0003;animation:pulse-badge 2s ease-in-out infinite;z-index:2}.weather-alerts-badge.critical-badge{background:linear-gradient(135deg,#dc3545,#c82333);border-color:#fff;box-shadow:0 2px 8px #dc354599,0 0 12px #dc354566;animation:pulse-badge-critical 1.5s ease-in-out infinite}.weather-alerts-badge.warning-badge{background:linear-gradient(135deg,#ffc107,#ff9800);border-color:#fff;box-shadow:0 2px 6px #ffc10780,0 0 10px #ffc1074d;animation:pulse-badge-warning 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes pulse-badge-critical{0%,to{transform:scale(1);box-shadow:0 2px 8px #dc354599,0 0 12px #dc354566}50%{transform:scale(1.2);box-shadow:0 3px 12px #dc3545cc,0 0 18px #dc354599}}@keyframes pulse-badge-warning{0%,to{transform:scale(1);box-shadow:0 2px 6px #ffc10780,0 0 10px #ffc1074d}50%{transform:scale(1.15);box-shadow:0 3px 10px #ffc107b3,0 0 15px #ffc10780}}.weather-alerts-panel{position:absolute;top:60px;right:0;width:380px;max-width:calc(100vw - 40px);max-height:calc(100vh - 140px);background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(240,90,36,.2);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.weather-alerts-panel{width:calc(100vw - 20px);max-width:380px;right:-10px}}.weather-alerts-header{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 50%,var(--primary-teal-light) 100%);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--accent-orange);box-shadow:0 2px 8px #0000001a}.weather-alerts-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--white);letter-spacing:.03em;text-transform:uppercase;font-family:var(--font-primary)}.weather-alerts-close{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;color:var(--white);transition:all .3s ease;font-weight:300;line-height:1}.weather-alerts-close:hover{background:var(--accent-orange);border-color:var(--accent-orange);transform:scale(1.05);box-shadow:0 2px 8px #f2592466}.weather-alerts-content{flex:1;overflow-y:auto;padding:16px;background:#f8f9fa}.weather-alerts-content::-webkit-scrollbar{width:6px}.weather-alerts-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.weather-alerts-content::-webkit-scrollbar-thumb{background:#f05a24;border-radius:3px}.weather-alerts-content::-webkit-scrollbar-thumb:hover{background:#d04a1a}.weather-alerts-loading,.weather-alerts-error,.weather-alerts-empty{text-align:center;padding:40px 20px;color:#6c757d}.weather-alerts-empty-icon{font-size:48px;display:block;margin-bottom:12px}.weather-alerts-section{margin-bottom:20px}.weather-alerts-section:last-child{margin-bottom:0}.weather-alerts-section-title{font-size:14px;font-weight:600;margin:0 0 12px;padding:8px 12px;border-radius:6px;background:#f05a241a;color:#f05a24}.weather-alerts-section.critical .weather-alerts-section-title{background:#dc35451a;color:#dc3545}.weather-alerts-list{display:flex;flex-direction:column;gap:12px}.weather-alert-item{background:#fff;border-radius:8px;padding:14px;border-left:4px solid #ffc107;box-shadow:0 2px 8px #0000001a;transition:all .2s ease}.weather-alert-item:hover{box-shadow:0 4px 12px #00000026;transform:translate(2px)}.weather-alert-item.critical{border-left-color:#dc3545;background:linear-gradient(to right,#dc35450d,#fff)}.weather-alert-item.warning{border-left-color:#ffc107;background:linear-gradient(to right,#ffc1070d,#fff)}.weather-alert-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}.weather-alert-header-left{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap}.weather-alert-type{font-weight:600;color:#333;font-size:15px}.weather-alert-severity-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.weather-alert-severity-badge.critical-badge{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;box-shadow:0 2px 4px #dc35454d}.weather-alert-severity-badge.warning-badge{background:linear-gradient(135deg,#ffc107,#ff9800);color:#856404;box-shadow:0 2px 4px #ffc1074d}.weather-alert-acknowledge{background:#28a7451a;border:1px solid rgba(40,167,69,.3);color:#28a745;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease}.weather-alert-acknowledge:hover{background:#28a74533;transform:scale(1.1)}.weather-alert-main-info{margin-bottom:12px;padding:12px;background:linear-gradient(135deg,#f05a240d,#f05a2405);border-radius:8px;border:1px solid rgba(240,90,36,.1)}.weather-alert-item.critical .weather-alert-main-info{background:linear-gradient(135deg,#dc354514,#dc354508);border-color:#dc354526}.weather-alert-item.warning .weather-alert-main-info{background:linear-gradient(135deg,#ffc10714,#ffc10708);border-color:#ffc10726}.weather-alert-value-container{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.weather-alert-value{display:flex;align-items:baseline;gap:4px}.weather-alert-value-number{font-size:24px;font-weight:700;color:#f05a24;line-height:1}.weather-alert-item.critical .weather-alert-value-number{color:#dc3545}.weather-alert-item.warning .weather-alert-value-number{color:#ff9800}.weather-alert-value-unit{font-size:14px;font-weight:500;color:#6c757d;margin-left:2px}.weather-alert-threshold{display:flex;align-items:center;gap:6px;font-size:13px}.weather-alert-threshold-label{color:#6c757d;font-weight:500}.weather-alert-threshold-value{color:#495057;font-weight:600}.weather-alert-message{font-size:13px;color:#495057;margin-bottom:8px;line-height:1.4}.weather-alert-meta{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#6c757d;padding-top:12px;border-top:1px solid #e9ecef;margin-top:4px}.weather-alert-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.weather-alert-meta-label{font-weight:500;color:#6c757d;font-size:11px;display:flex;align-items:center;gap:4px}.weather-alert-identifier{font-weight:600;color:#495057;font-size:12px}.weather-alert-forecast-time{color:#495057;font-weight:500;font-size:12px}.weather-alert-time{color:#6c757d;font-size:12px}.weather-alerts-footer{padding:16px;border-top:1px solid #e9ecef;background:linear-gradient(to bottom,#f8f9fa,#fff);display:flex;flex-direction:column;gap:12px}.weather-alerts-navigation{display:flex;justify-content:center;padding-bottom:12px;border-bottom:2px solid rgba(15,118,110,.2);margin-bottom:8px}.weather-alerts-nav-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #0f766e33;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;min-width:160px;justify-content:center}.weather-alerts-nav-btn:hover{background:linear-gradient(135deg,#0d9488,#2dd4bf);box-shadow:0 4px 12px #0f766e4d;transform:translateY(-1px)}.weather-alerts-nav-btn:active{transform:translateY(0);box-shadow:0 2px 6px #0f766e40}.weather-alerts-nav-icon{font-size:16px;line-height:1}.weather-alerts-nav-text{font-size:14px;font-weight:600;letter-spacing:.3px}.weather-alerts-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.weather-alerts-dev-actions{opacity:.7;padding-top:8px;position:relative}.weather-alerts-dev-actions:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60px;height:2px;background:#6c757d4d;border-radius:2px}.weather-alerts-action-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;min-width:100px;justify-content:center}.weather-alerts-action-icon{font-size:16px;line-height:1}.weather-alerts-action-text{font-size:13px}.weather-alerts-refresh{background:linear-gradient(135deg,#f05a24,#f25924);color:#fff}.weather-alerts-refresh:hover:not(:disabled){background:linear-gradient(135deg,#d04a1a,#c04a1a);transform:translateY(-2px);box-shadow:0 4px 8px #f05a244d}.weather-alerts-check{background:linear-gradient(135deg,#28a745,#218838);color:#fff}.weather-alerts-check:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.weather-alerts-send{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.weather-alerts-send:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px);box-shadow:0 4px 8px #007bff4d}.weather-alerts-action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.weather-alerts-action-btn:active:not(:disabled){transform:translateY(0)}.weather-alerts-result{margin-top:12px;padding:10px 16px;border-radius:6px;font-size:13px;text-align:center;animation:slideDown .3s ease}.weather-alerts-result.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.weather-alerts-result.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}:root{--ftp-primary: #4f46e5;--ftp-primary-hover: #4338ca;--ftp-primary-light: #eef2ff;--ftp-secondary: #10b981;--ftp-secondary-hover: #059669;--ftp-danger: #ef4444;--ftp-danger-hover: #dc2626;--ftp-warning: #f59e0b;--ftp-warning-hover: #d97706;--ftp-info: #3b82f6;--ftp-bg-primary: #ffffff;--ftp-bg-secondary: #f9fafb;--ftp-bg-tertiary: #f3f4f6;--ftp-border: #e5e7eb;--ftp-border-light: #f3f4f6;--ftp-text-primary: #111827;--ftp-text-secondary: #6b7280;--ftp-text-tertiary: #9ca3af;--ftp-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--ftp-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--ftp-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--ftp-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--ftp-spacing-xs: .25rem;--ftp-spacing-sm: .5rem;--ftp-spacing-md: 1rem;--ftp-spacing-lg: 1.5rem;--ftp-spacing-xl: 2rem;--ftp-radius-sm: .375rem;--ftp-radius-md: .5rem;--ftp-radius-lg: .75rem;--ftp-radius-xl: 1rem;--ftp-transition: all .2s cubic-bezier(.4, 0, .2, 1)}.ftp-browser{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;z-index:1000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;animation:fadeIn .2s ease-out}.ftp-browser-header{background:linear-gradient(135deg,var(--ftp-primary) 0%,#6366f1 100%);color:#fff;padding:var(--ftp-spacing-lg) var(--ftp-spacing-xl);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--ftp-shadow-lg);border-bottom:1px solid rgba(255,255,255,.1)}.ftp-browser-header h2{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.025em;display:flex;align-items:center;gap:var(--ftp-spacing-sm)}.ftp-browser-header h2:before{content:"📁";font-size:1.75rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.close-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.2);color:#fff;width:40px;height:40px;border-radius:var(--ftp-radius-lg);cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:var(--ftp-transition);font-weight:300}.close-btn:hover{background:#ffffff40;transform:scale(1.05);border-color:#ffffff4d}.close-btn:active{transform:scale(.95)}.breadcrumbs{background:var(--ftp-bg-secondary);padding:var(--ftp-spacing-md) var(--ftp-spacing-xl);border-bottom:1px solid var(--ftp-border);display:flex;align-items:center;flex-wrap:wrap;gap:var(--ftp-spacing-xs)}.breadcrumb-item{background:var(--ftp-bg-primary);border:1px solid var(--ftp-border);padding:.5rem .875rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);color:var(--ftp-text-secondary)}.breadcrumb-item:hover:not(:disabled){background:var(--ftp-primary-light);border-color:var(--ftp-primary);color:var(--ftp-primary);transform:translateY(-1px);box-shadow:var(--ftp-shadow-sm)}.breadcrumb-item:disabled{background:var(--ftp-primary);color:#fff;cursor:default;border-color:var(--ftp-primary);font-weight:600}.breadcrumb-separator{color:var(--ftp-text-tertiary);font-weight:400;margin:0 var(--ftp-spacing-xs);-webkit-user-select:none;user-select:none}.ftp-controls{background:var(--ftp-bg-primary);padding:var(--ftp-spacing-md) var(--ftp-spacing-xl);border-bottom:1px solid var(--ftp-border);display:flex;align-items:center;gap:var(--ftp-spacing-sm);flex-wrap:wrap}.nav-btn,.refresh-btn,.create-btn,.delete-all-btn{background:var(--ftp-primary);color:#fff;border:none;padding:.625rem 1rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);display:inline-flex;align-items:center;gap:var(--ftp-spacing-sm);box-shadow:var(--ftp-shadow-sm);min-height:38px;white-space:nowrap}.nav-btn svg,.refresh-btn svg,.create-btn svg,.delete-all-btn svg{width:18px;height:18px;flex-shrink:0}.nav-btn:hover:not(:disabled),.refresh-btn:hover:not(:disabled){background:var(--ftp-primary-hover);transform:translateY(-1px);box-shadow:var(--ftp-shadow-md)}.nav-btn:active:not(:disabled),.refresh-btn:active:not(:disabled){transform:translateY(0)}.create-btn{background:var(--ftp-secondary)}.create-btn:hover:not(:disabled){background:var(--ftp-secondary-hover);transform:translateY(-1px);box-shadow:var(--ftp-shadow-md)}.create-btn:active:not(:disabled){transform:translateY(0)}.delete-all-btn{background:transparent!important;border:2px solid var(--ftp-danger)!important;color:var(--ftp-danger)!important;font-weight:600}.delete-all-btn svg{stroke-width:2;stroke:currentColor}.delete-all-btn:hover:not(:disabled){background:var(--ftp-danger)!important;color:#fff!important;border-color:var(--ftp-danger)!important;transform:translateY(-1px);box-shadow:0 4px 12px #ef444440}.delete-all-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #ef444433}.delete-all-btn:disabled{border-color:var(--ftp-text-tertiary)!important;color:var(--ftp-text-tertiary)!important;background:transparent!important;cursor:not-allowed;opacity:.5}.nav-btn:disabled,.refresh-btn:disabled,.create-btn:disabled{background:var(--ftp-text-tertiary);cursor:not-allowed;transform:none;opacity:.6;position:relative}.refresh-btn:disabled svg{animation:spin 1s linear infinite}.current-path{color:var(--ftp-text-secondary);font-weight:500;font-size:.875rem;margin-left:auto;padding:.5rem .875rem;background:var(--ftp-bg-tertiary);border-radius:var(--ftp-radius-md);font-family:Courier New,monospace}.directory-content{flex:1;background:var(--ftp-bg-secondary);overflow-y:auto;padding:var(--ftp-spacing-xl)}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--ftp-text-secondary);gap:var(--ftp-spacing-md)}.spinner{width:48px;height:48px;border:3px solid var(--ftp-border);border-top:3px solid var(--ftp-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error{background:#fef2f2;color:var(--ftp-danger);padding:var(--ftp-spacing-lg);border-radius:var(--ftp-radius-lg);border:1px solid #fecaca;display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ftp-spacing-lg);box-shadow:var(--ftp-shadow-sm)}.error button{background:var(--ftp-danger);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition)}.error button:hover{background:var(--ftp-danger-hover);transform:translateY(-1px)}.file-list{display:grid;gap:var(--ftp-spacing-sm)}.empty-directory{text-align:center;padding:3rem;color:var(--ftp-text-secondary);font-size:1rem;background:var(--ftp-bg-primary);border-radius:var(--ftp-radius-lg);border:2px dashed var(--ftp-border)}.file-item{display:flex;align-items:center;padding:var(--ftp-spacing-md);border:1px solid var(--ftp-border);border-radius:var(--ftp-radius-lg);cursor:pointer;transition:var(--ftp-transition);background:var(--ftp-bg-primary);box-shadow:var(--ftp-shadow-sm)}.file-item:hover{background:var(--ftp-bg-secondary);border-color:var(--ftp-primary);transform:translateY(-2px);box-shadow:var(--ftp-shadow-md)}.file-item.selected{background:var(--ftp-primary-light);border-color:var(--ftp-primary);box-shadow:0 0 0 3px #4f46e51a}.file-item.directory{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fbbf24;cursor:pointer}.file-item.directory:hover{background:linear-gradient(135deg,#fde68a,#fcd34d);transform:translateY(-2px);box-shadow:0 4px 12px #fbbf2440;border-color:var(--ftp-warning)}.file-item.directory:after{content:"→";color:var(--ftp-warning);font-weight:600;font-size:1.25rem;margin-left:auto;padding-left:var(--ftp-spacing-md)}.file-icon{font-size:1.75rem;margin-right:var(--ftp-spacing-md);min-width:32px;display:flex;align-items:center;justify-content:center}.file-info{flex:1;min-width:0}.file-name{font-weight:600;color:var(--ftp-text-primary);margin-bottom:var(--ftp-spacing-xs);word-break:break-all;font-size:.9375rem}.file-details{display:flex;gap:var(--ftp-spacing-md);font-size:.8125rem;color:var(--ftp-text-secondary)}.file-size{font-weight:500}.file-date{color:var(--ftp-text-tertiary)}.directory-info{color:var(--ftp-warning);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.file-actions{display:flex;gap:var(--ftp-spacing-xs);margin-left:var(--ftp-spacing-md)}.action-btn{background:var(--ftp-bg-tertiary);border:1px solid var(--ftp-border);color:var(--ftp-text-secondary);width:36px;height:36px;border-radius:var(--ftp-radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.125rem;transition:var(--ftp-transition);flex-shrink:0}.action-btn svg{width:16px;height:16px;flex-shrink:0}.action-btn:hover{background:var(--ftp-bg-primary);transform:scale(1.1);box-shadow:var(--ftp-shadow-sm)}.preview-btn:hover{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.chart-btn:hover,.download-btn:hover{background:#d1fae5;border-color:#6ee7b7;color:#047857}.delete-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.rename-btn:hover{background:#fed7aa;border-color:#fdba74;color:#9a3412}.file-preview-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;z-index:1001;animation:fadeIn .2s ease-out}.preview-header{background:linear-gradient(135deg,var(--ftp-secondary) 0%,#14b8a6 100%);color:#fff;padding:var(--ftp-spacing-lg) var(--ftp-spacing-xl);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--ftp-shadow-lg);border-bottom:1px solid rgba(255,255,255,.1)}.preview-header h3{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.025em}.preview-content{flex:1;background:var(--ftp-bg-primary);overflow-y:auto;padding:var(--ftp-spacing-xl)}.preview-data{max-width:1200px;margin:0 auto}.preview-info{background:var(--ftp-bg-secondary);padding:var(--ftp-spacing-lg);border-radius:var(--ftp-radius-lg);margin-bottom:var(--ftp-spacing-lg);border:1px solid var(--ftp-border);box-shadow:var(--ftp-shadow-sm)}.info-item{display:flex;justify-content:space-between;margin-bottom:var(--ftp-spacing-sm);padding:var(--ftp-spacing-sm) 0;border-bottom:1px solid var(--ftp-border)}.info-item:last-child{border-bottom:none;margin-bottom:0}.info-item strong{color:var(--ftp-text-secondary);min-width:120px;font-weight:600}.preview-text{background:var(--ftp-bg-secondary);border:1px solid var(--ftp-border);border-radius:var(--ftp-radius-lg);padding:var(--ftp-spacing-lg);margin-bottom:var(--ftp-spacing-lg);box-shadow:var(--ftp-shadow-sm)}.preview-text h4{margin:0 0 var(--ftp-spacing-md) 0;color:var(--ftp-text-primary);font-size:1rem;font-weight:600}.preview-text pre{background:var(--ftp-bg-primary);border:1px solid var(--ftp-border);border-radius:var(--ftp-radius-md);padding:var(--ftp-spacing-md);margin:0;font-size:.8125rem;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;max-height:400px;overflow-y:auto;color:var(--ftp-text-primary);font-family:Consolas,Monaco,Courier New,monospace}.preview-actions{display:flex;gap:var(--ftp-spacing-md);justify-content:center;padding:var(--ftp-spacing-lg) 0;flex-wrap:wrap}.preview-actions .download-btn{background:var(--ftp-secondary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);display:inline-flex;align-items:center;gap:var(--ftp-spacing-sm);box-shadow:var(--ftp-shadow-sm)}.preview-actions .download-btn svg{width:16px;height:16px;flex-shrink:0}.preview-actions .download-btn:hover{background:var(--ftp-secondary-hover);transform:translateY(-2px);box-shadow:var(--ftp-shadow-md)}.preview-actions .close-btn{background:var(--ftp-text-tertiary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition)}.preview-actions .close-btn:hover{background:var(--ftp-text-secondary);transform:translateY(-2px);box-shadow:var(--ftp-shadow-md)}@media(max-width:768px){.ftp-browser-header{padding:var(--ftp-spacing-md)}.ftp-browser-header h2{font-size:1.25rem}.breadcrumbs{padding:var(--ftp-spacing-sm) var(--ftp-spacing-md)}.ftp-controls{padding:var(--ftp-spacing-sm) var(--ftp-spacing-md);flex-direction:row;flex-wrap:wrap}.nav-btn,.refresh-btn,.create-btn{flex:1;min-width:auto;justify-content:center}.current-path{flex-basis:100%;margin-left:0;margin-top:var(--ftp-spacing-sm);text-align:center}.directory-content{padding:var(--ftp-spacing-md)}.file-item{padding:var(--ftp-spacing-sm)}.file-details{flex-direction:column;gap:var(--ftp-spacing-xs)}.file-actions{margin-left:var(--ftp-spacing-sm);flex-wrap:wrap}.action-btn{width:32px;height:32px;font-size:1rem}.preview-header{padding:var(--ftp-spacing-md)}.preview-header h3{font-size:1.125rem}.preview-content{padding:var(--ftp-spacing-md)}.preview-actions{flex-direction:column}.preview-actions .download-btn,.preview-actions .close-btn{width:100%}}.json-preview{background:#1e1e1e;color:#d4d4d4;border:1px solid #3c3c3c;border-radius:var(--ftp-radius-md);padding:var(--ftp-spacing-md);font-family:Consolas,Monaco,Courier New,monospace;font-size:.8125rem;line-height:1.6;max-height:400px;overflow:auto;white-space:pre-wrap;word-wrap:break-word}.csv-preview{font-family:Consolas,Monaco,Courier New,monospace;color:var(--ftp-text-primary);background:var(--ftp-bg-secondary);padding:var(--ftp-spacing-md);border-radius:var(--ftp-radius-md);border:1px solid var(--ftp-border);overflow:auto}.csv-table-wrapper{max-height:500px;overflow:auto;border-radius:var(--ftp-radius-md);border:1px solid var(--ftp-border);box-shadow:var(--ftp-shadow-sm)}.csv-table{width:100%;border-collapse:collapse;font-family:Consolas,Monaco,Courier New,monospace;font-size:.8125rem;color:var(--ftp-text-primary);background:var(--ftp-bg-primary)}.csv-table thead{position:sticky;top:0;background:linear-gradient(180deg,var(--ftp-bg-tertiary),var(--ftp-bg-secondary));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1}.csv-table th,.csv-table td{border:1px solid var(--ftp-border);padding:.5rem .75rem;text-align:left;white-space:nowrap}.csv-table tbody tr:nth-child(odd){background:var(--ftp-bg-secondary)}.csv-table tbody tr:hover{background:var(--ftp-primary-light)}.csv-table th{font-weight:600;color:var(--ftp-text-primary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.csv-table-note{margin-top:var(--ftp-spacing-sm);font-size:.8125rem;color:var(--ftp-text-secondary);text-align:center;padding:var(--ftp-spacing-sm);background:var(--ftp-bg-tertiary);border-radius:var(--ftp-radius-sm)}.error-preview{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--ftp-radius-md);padding:var(--ftp-spacing-md);color:var(--ftp-danger);font-weight:500}.preview-text h4{margin:0 0 var(--ftp-spacing-sm) 0;color:var(--ftp-text-primary);font-size:1rem;font-weight:600}.preview-text pre{margin:0;background:var(--ftp-bg-tertiary);border:1px solid var(--ftp-border);border-radius:var(--ftp-radius-md);padding:var(--ftp-spacing-md);font-family:Consolas,Monaco,Courier New,monospace;font-size:.8125rem;line-height:1.6;max-height:400px;overflow:auto;white-space:pre-wrap;word-wrap:break-word}.file-item[data-file-type="json.gz"]{border-left:4px solid var(--ftp-secondary)}.file-item[data-file-type=json]{border-left:4px solid var(--ftp-info)}.file-item[data-file-type=csv]{border-left:4px solid var(--ftp-primary)}.directory-content::-webkit-scrollbar,.preview-content::-webkit-scrollbar,.csv-table-wrapper::-webkit-scrollbar,.preview-text pre::-webkit-scrollbar{width:10px;height:10px}.directory-content::-webkit-scrollbar-track,.preview-content::-webkit-scrollbar-track,.csv-table-wrapper::-webkit-scrollbar-track,.preview-text pre::-webkit-scrollbar-track{background:var(--ftp-bg-tertiary);border-radius:var(--ftp-radius-sm)}.directory-content::-webkit-scrollbar-thumb,.preview-content::-webkit-scrollbar-thumb,.csv-table-wrapper::-webkit-scrollbar-thumb,.preview-text pre::-webkit-scrollbar-thumb{background:var(--ftp-text-tertiary);border-radius:var(--ftp-radius-sm);transition:var(--ftp-transition)}.directory-content::-webkit-scrollbar-thumb:hover,.preview-content::-webkit-scrollbar-thumb:hover,.csv-table-wrapper::-webkit-scrollbar-thumb:hover,.preview-text pre::-webkit-scrollbar-thumb:hover{background:var(--ftp-text-secondary)}.delete-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1002;animation:fadeIn .2s ease-out}.delete-modal{background:var(--ftp-bg-primary);border-radius:var(--ftp-radius-xl);box-shadow:var(--ftp-shadow-xl);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.delete-modal-header{background:linear-gradient(135deg,var(--ftp-danger) 0%,#dc2626 100%);color:#fff;padding:var(--ftp-spacing-lg) var(--ftp-spacing-xl);border-radius:var(--ftp-radius-xl) var(--ftp-radius-xl) 0 0;display:flex;justify-content:space-between;align-items:center}.delete-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.025em}.delete-modal-content{padding:var(--ftp-spacing-xl)}.warning-message{background:#fef3c7;border:1px solid #fbbf24;border-radius:var(--ftp-radius-lg);padding:var(--ftp-spacing-lg);margin-bottom:var(--ftp-spacing-xl);color:#92400e}.warning-message p{margin:0 0 var(--ftp-spacing-sm) 0;line-height:1.6}.warning-message p:last-child{margin-bottom:0}.warning-message strong{color:var(--ftp-danger);font-weight:700}.directory-path{background:var(--ftp-bg-tertiary);border:1px solid var(--ftp-border);border-radius:var(--ftp-radius-md);padding:var(--ftp-spacing-md);margin:var(--ftp-spacing-sm) 0;font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;color:var(--ftp-text-primary);word-break:break-all}.directory-path code{background:none;color:var(--ftp-text-primary);font-weight:500}.confirmation-input{margin-bottom:var(--ftp-spacing-lg)}.confirmation-input label{display:block;margin-bottom:var(--ftp-spacing-sm);font-weight:600;color:var(--ftp-text-primary);font-size:.875rem}.confirmation-input input{width:100%;padding:.75rem 1rem;border:2px solid var(--ftp-border);border-radius:var(--ftp-radius-md);font-size:.875rem;transition:var(--ftp-transition);box-sizing:border-box;font-family:inherit}.confirmation-input input:focus{outline:none;border-color:var(--ftp-primary);box-shadow:0 0 0 3px #4f46e51a}.confirmation-input input::placeholder{color:var(--ftp-text-tertiary);font-style:italic}.delete-modal-actions{display:flex;gap:var(--ftp-spacing-md);justify-content:flex-end;padding:var(--ftp-spacing-lg) var(--ftp-spacing-xl);background:var(--ftp-bg-secondary);border-radius:0 0 var(--ftp-radius-xl) var(--ftp-radius-xl);border-top:1px solid var(--ftp-border)}.delete-modal-actions .cancel-btn{background:var(--ftp-text-tertiary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);min-width:100px}.delete-modal-actions .cancel-btn:hover{background:var(--ftp-text-secondary);transform:translateY(-1px);box-shadow:var(--ftp-shadow-sm)}.delete-modal-actions .delete-btn{background:var(--ftp-danger);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);min-width:140px}.delete-modal-actions .delete-btn:hover:not(:disabled){background:var(--ftp-danger-hover);transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.delete-modal-actions .delete-btn:disabled{background:var(--ftp-text-tertiary);cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.delete-modal-actions .create-btn{background:var(--ftp-secondary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);min-width:120px}.delete-modal-actions .create-btn:hover:not(:disabled){background:var(--ftp-secondary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.delete-modal-actions .create-btn:disabled{background:var(--ftp-text-tertiary);cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}.delete-modal-actions .rename-btn{background:var(--ftp-warning);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--ftp-radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--ftp-transition);min-width:140px}.delete-modal-actions .rename-btn:hover:not(:disabled){background:var(--ftp-warning-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.delete-modal-actions .rename-btn:disabled{background:var(--ftp-text-tertiary);cursor:not-allowed;transform:none;box-shadow:none;opacity:.5}@media(max-width:768px){.delete-modal{width:95%;margin:var(--ftp-spacing-lg)}.delete-modal-header{padding:var(--ftp-spacing-md)}.delete-modal-header h3{font-size:1.125rem}.delete-modal-content{padding:var(--ftp-spacing-lg)}.warning-message{padding:var(--ftp-spacing-md)}.delete-modal-actions{padding:var(--ftp-spacing-md) var(--ftp-spacing-lg);flex-direction:column}.delete-modal-actions .cancel-btn,.delete-modal-actions .delete-btn,.delete-modal-actions .create-btn,.delete-modal-actions .rename-btn{width:100%;min-width:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus-visible,input:focus-visible,.breadcrumb-item:focus-visible,.file-item:focus-visible{outline:2px solid var(--ftp-primary);outline-offset:2px}.file-item{animation:slideInUp .3s ease-out;animation-fill-mode:both}.file-item:nth-child(1){animation-delay:.05s}.file-item:nth-child(2){animation-delay:.1s}.file-item:nth-child(3){animation-delay:.15s}.file-item:nth-child(4){animation-delay:.2s}.file-item:nth-child(5){animation-delay:.25s}.file-item:nth-child(n+6){animation-delay:.3s}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}button{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.file-item,.action-btn,.breadcrumb-item,.nav-btn,.refresh-btn,.create-btn,.spinner{will-change:transform}@media print{.ftp-browser-header,.breadcrumbs,.ftp-controls,.file-actions,.close-btn{display:none!important}.ftp-browser{background:#fff;position:relative}.directory-content{background:#fff}.file-item{break-inside:avoid}}.data-access-container{min-height:100vh;background:linear-gradient(135deg,var(--white) 0%,var(--light-gray) 100%);display:flex;flex-direction:column;font-family:var(--font-primary);color:var(--primary-teal)}.data-access-header{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 50%,var(--primary-teal-light) 100%);border-bottom:4px solid var(--accent-orange);padding:16px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 20px var(--overlay-medium);font-family:var(--font-primary);min-height:70px;color:var(--white);position:relative;overflow:visible;margin-bottom:0}.header-logo{position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:10;display:flex;align-items:center}.company-logo{height:auto;width:300px;object-fit:contain;filter:brightness(0) invert(1);transition:transform .3s ease;pointer-events:none;-webkit-user-select:none;user-select:none}.company-logo:hover{transform:scale(1.05);filter:brightness(0) invert(1) drop-shadow(0 0 8px rgba(255,255,255,.3))}.header-title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:5;pointer-events:none;width:auto;text-align:center}.header-title h2{font-size:1.4rem;font-weight:600;color:var(--white);margin:0;line-height:1.2;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font-primary);pointer-events:auto}.header-subtitle{margin:.25rem 0 0;font-size:.75rem;color:var(--white);opacity:.8;font-weight:400;text-transform:none;letter-spacing:.02em}.header-actions{display:flex;gap:12px;align-items:center;flex-shrink:0;position:absolute;right:32px;top:50%;transform:translateY(-50%);z-index:10}.header-actions .close-btn,.header-actions .icon-btn.close-btn,.icon-btn.close-btn{background:#ffffff1a!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:8px!important;width:44px!important;height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;font-size:1.5rem!important;color:var(--white)!important;transition:all .3s ease!important;font-weight:300!important;line-height:1!important;padding:0!important;flex-shrink:0!important}.header-actions .close-btn:hover,.header-actions .icon-btn.close-btn:hover,.icon-btn.close-btn:hover{background:var(--accent-orange)!important;border-color:var(--accent-orange)!important;color:var(--white)!important;transform:scale(1.05)!important;box-shadow:0 4px 12px #f2592466!important}.data-access-breadcrumbs{padding:1rem 2rem;background:var(--white);border-bottom:1px solid rgba(15,118,110,.1);display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;box-shadow:0 1px 3px #0000000d}.breadcrumb-item{background:none;border:none;color:var(--primary-teal);cursor:pointer;font-size:.875rem;padding:.5rem .75rem;border-radius:6px;transition:all .2s ease;font-weight:500;font-family:var(--font-primary)}.breadcrumb-item:hover:not(:disabled){background:#0f766e1a;color:var(--primary-teal);transform:translateY(-1px)}.breadcrumb-item:disabled{color:var(--primary-teal);opacity:.6;cursor:default;font-weight:600}.breadcrumb-separator{color:#0f766e66;font-weight:300;font-size:1rem}.data-access-controls{padding:1.25rem 2rem;background:var(--white);border-bottom:1px solid rgba(15,118,110,.1);display:flex;align-items:center;gap:1rem;flex-wrap:wrap;box-shadow:0 1px 3px #0000000d}.nav-btn{background:var(--primary-teal);color:var(--white);border:none;border-radius:8px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.05em}.nav-btn:hover:not(:disabled){background:var(--accent-orange);transform:translateY(-2px);box-shadow:0 4px 12px #0f766e4d}.nav-btn:disabled{background:#0f766e33;color:#0f766e80;cursor:not-allowed;transform:none;opacity:.6}.current-path{color:var(--primary-teal);font-size:.875rem;font-family:Courier New,monospace;background:#0f766e0d;padding:.625rem 1rem;border-radius:8px;border:1px solid rgba(15,118,110,.2);flex:1;min-width:200px;max-width:600px}.data-access-content{flex:1;padding:1.5rem 2rem;overflow-y:auto;background:transparent;display:flex;flex-direction:column;gap:1rem}.file-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:var(--white);border:1px solid rgba(15,118,110,.1);border-radius:8px;box-shadow:0 1px 3px #0000000d;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:200px}.toolbar-center{display:flex;align-items:center;flex-shrink:0}.toolbar-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.search-box{position:relative;display:flex;align-items:center;flex:1;min-width:200px;max-width:400px}.search-icon{position:absolute;left:.75rem;color:#0f766e80;pointer-events:none;z-index:1}.search-input{width:100%;padding:.5rem .75rem .5rem 2.25rem;border:1px solid rgba(15,118,110,.15);border-radius:6px;font-size:.875rem;font-family:var(--font-primary);color:var(--primary-teal);background:var(--white);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #0f766e1a}.search-input::placeholder{color:#0f766e66}.clear-search-btn{position:absolute;right:.5rem;background:none;border:none;color:#0f766e80;cursor:pointer;font-size:.875rem;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:2}.clear-search-btn:hover{color:var(--primary-teal);transform:scale(1.1)}.filter-select,.sort-select{padding:.5rem .75rem;border:1px solid rgba(15,118,110,.15);border-radius:6px;font-size:.875rem;font-family:var(--font-primary);color:var(--primary-teal);background:var(--white);cursor:pointer;transition:all .2s ease;min-width:120px}.filter-select:focus,.sort-select:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #0f766e1a}.sort-order-btn{padding:.5rem;border:1px solid rgba(15,118,110,.15);border-radius:6px;background:var(--white);color:var(--primary-teal);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;width:36px;height:36px}.sort-order-btn:hover{background:#0f766e0d;border-color:var(--primary-teal);transform:translateY(-1px)}.sort-order-btn:active{transform:translateY(0)}.file-count{font-size:.8125rem;color:#0f766eb3;font-family:var(--font-primary);white-space:nowrap}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1.5rem;min-height:400px}.spinner{width:50px;height:50px;border:4px solid rgba(15,118,110,.1);border-top-color:var(--primary-teal);border-radius:50%;animation:spin 1s linear infinite}.error-state{color:var(--accent-orange)}.error-state h3{font-size:1.25rem;font-weight:600;margin:0;color:var(--accent-orange)}.error-state p{color:var(--primary-teal);opacity:.8}.error-state button{background:var(--primary-teal);color:var(--white);border:none;border-radius:8px;padding:.75rem 1.5rem;cursor:pointer;margin-top:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;transition:all .3s ease}.error-state button:hover{background:var(--accent-orange);transform:translateY(-2px);box-shadow:0 4px 12px #0f766e4d}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;padding:0}.file-card{background:var(--white);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;gap:1rem;border:2px solid transparent;position:relative;overflow:hidden}.file-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary-teal);transition:width .3s ease}.file-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0f766e33;border-color:var(--primary-teal)}.file-card:hover:before{width:6px}.file-card.selected{border-color:var(--primary-teal);background:#0f766e0d;box-shadow:0 4px 16px #0f766e33}.file-card.directory:before{background:var(--accent-orange)}.file-card.file:before{background:var(--primary-teal)}.file-icon{font-size:3rem;text-align:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .3s ease}.file-card:hover .file-icon{transform:scale(1.1)}.file-info{flex:1}.file-name{font-weight:600;color:var(--primary-teal);margin-bottom:.5rem;word-break:break-word;font-size:.9375rem;font-family:var(--font-primary);line-height:1.4}.file-details{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#0f766eb3;font-family:var(--font-primary)}.file-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.action-btn{background:#0f766e0d;border:1px solid rgba(15,118,110,.2);border-radius:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:var(--primary-teal)}.action-btn:hover{background:var(--primary-teal);border-color:var(--primary-teal);color:var(--white);transform:scale(1.1) translateY(-2px);box-shadow:0 4px 8px #0f766e4d}.preview-btn:hover{background:var(--primary-teal);border-color:var(--primary-teal);color:var(--white)}.download-btn:hover{background:var(--accent-orange);border-color:var(--accent-orange);color:var(--white)}.empty-directory{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:#0f766e99;font-size:1.125rem;font-family:var(--font-primary);font-weight:500}.data-access-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#0f766eb3;min-height:400px}.data-access-empty p{margin:.5rem 0;font-size:1rem;font-family:var(--font-primary);line-height:1.6}.data-access-empty p:first-child{font-size:1.25rem;font-weight:600;color:var(--primary-teal);margin-bottom:1rem}.file-preview-modal{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease;overflow:auto}.preview-header{background:linear-gradient(135deg,var(--primary-teal) 0%,rgba(15,118,110,.95) 100%);padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;box-shadow:0 1px 4px #0000001a;border-radius:12px 12px 0 0}.preview-header h3{margin:0;font-size:1rem;color:var(--white);font-weight:600;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.02em;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:1rem;text-shadow:0 1px 2px rgba(0,0,0,.15);line-height:1.2}.preview-header-actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.preview-header .back-to-explorer-btn{background:#ffffff1f;color:var(--white);border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:.375rem .75rem;font-size:.6875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.375rem;transition:all .2s ease;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.03em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);height:32px;white-space:nowrap}.preview-header .back-to-explorer-btn:hover{background:#ffffff38;border-color:#fff6;transform:translateY(-1px);box-shadow:0 2px 6px #0000001f}.preview-header .back-to-explorer-btn:active{transform:translateY(0)}.preview-header .close-btn{background:#ffffff1f;color:var(--white);border:1px solid rgba(255,255,255,.25);border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.125rem;transition:all .2s ease;font-weight:300;line-height:1;flex-shrink:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-header .close-btn:hover{background:#ffffff38;border-color:#fff6;transform:scale(1.05);box-shadow:0 2px 6px #0000001f}.preview-header .close-btn:active{transform:scale(.98)}.preview-content{background:var(--white);border-radius:12px;max-width:98vw;max-height:96vh;width:1600px;min-width:900px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #0003;animation:slideUp .3s ease}.preview-data{padding:.75rem 1.5rem;overflow-y:auto;flex:1;background:var(--white);display:flex;flex-direction:column;min-height:0;gap:.75rem}.preview-info{display:flex;gap:.875rem;padding:.3125rem .625rem;background:#0f766e05;border:1px solid rgba(15,118,110,.08);border-radius:6px;flex-shrink:0;margin:0;align-items:center;flex-wrap:wrap}.preview-info .info-item{min-height:1.125rem;display:flex;align-items:center;height:1.125rem}.info-item{font-size:.6875rem;color:#0f766ebf;font-family:var(--font-primary);line-height:1.2;display:flex;align-items:center;gap:0;white-space:nowrap}.info-item strong{color:var(--primary-teal);font-weight:600;text-transform:uppercase;font-size:.5625rem;letter-spacing:.04em;opacity:.85;white-space:nowrap}.info-item strong:after{content:":";margin-left:0;margin-right:.25rem}.info-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;font-size:.6875rem}.preview-text,.preview-pdf-container{margin:0;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.preview-text h4,.preview-pdf-container h4{margin:0 0 .5rem;color:var(--primary-teal);font-size:.6875rem;font-weight:600;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;opacity:.7}.pdf-viewer-wrapper{background:var(--white);border:1px solid rgba(15,118,110,.1);border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000f,inset 0 1px 2px #00000005;flex:1;min-height:0;display:flex;flex-direction:column}.pdf-viewer{width:100%;height:100%;border:none;background:#525252}.json-preview-wrapper{background:var(--white);border:1px solid rgba(15,118,110,.1);border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000f,inset 0 1px 2px #00000005;flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.json-preview{margin:0;padding:1rem 1.25rem;background:#1e1e1e;color:#d4d4d4;font-size:.875rem;line-height:1.6;font-family:Fira Code,Consolas,Monaco,Courier New,monospace;overflow-x:auto;flex:1;min-height:0}.json-preview code{color:#d4d4d4;font-family:inherit;font-size:inherit;background:transparent;padding:0;border:none;white-space:pre;word-wrap:normal;display:block;width:100%;height:100%}.json-preview .json-key{color:#9cdcfe}.json-preview .json-string{color:#ce9178}.json-preview .json-number{color:#b5cea8}.json-preview .json-boolean{color:#569cd6}.json-preview{color:#d4d4d4}.csv-preview-wrapper{background:var(--white);border:1px solid rgba(15,118,110,.1);border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000f,inset 0 1px 2px #00000005;flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.csv-preview{margin:0;padding:1rem 1.25rem;background:#f8f9fa;color:var(--primary-teal);font-size:.875rem;line-height:1.6;font-family:Courier New,monospace;overflow-x:auto;flex:1;min-height:0}.csv-preview code{color:inherit;font-family:inherit;font-size:inherit;background:transparent;padding:0;border:none;white-space:pre;word-wrap:normal;display:block;width:100%;height:100%}.text-preview-wrapper{background:var(--white);border:1px solid rgba(15,118,110,.1);border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000f,inset 0 1px 2px #00000005;flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.text-preview{margin:0;padding:1rem 1.25rem;background:#f8f9fa;color:var(--primary-teal);font-size:.875rem;line-height:1.6;font-family:Courier New,monospace;overflow-x:auto;flex:1;min-height:0}.text-preview code{color:inherit;font-family:inherit;font-size:inherit;background:transparent;padding:0;border:none;white-space:pre;word-wrap:normal;display:block;width:100%;height:100%}.preview-actions{display:flex;gap:.75rem;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;border-top:1px solid rgba(15,118,110,.08);background:#0f766e03;flex-shrink:0}.preview-actions-left{display:flex;gap:.5rem;align-items:center}.preview-actions .back-to-explorer-btn{background:#0f766e0f;color:var(--primary-teal);border:1px solid rgba(15,118,110,.15);border-radius:6px;padding:.375rem .75rem;font-size:.6875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.375rem;transition:all .2s ease;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.03em;height:32px}.preview-actions .back-to-explorer-btn:hover{background:#0f766e1f;border-color:#0f766e40;transform:translateY(-1px);box-shadow:0 2px 6px #0f766e26}.preview-actions .back-to-explorer-btn:active{transform:translateY(0)}.preview-actions .download-btn,.preview-actions .close-btn{padding:.375rem .875rem;border-radius:6px;font-size:.6875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.375rem;transition:all .2s ease;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.03em;height:32px;white-space:nowrap}.preview-actions .download-btn{background:var(--accent-orange);color:var(--white);border:none;box-shadow:0 1px 3px #f2592433}.preview-actions .download-btn:hover{background:#e04a1f;transform:translateY(-1px);box-shadow:0 2px 8px #f259244d}.preview-actions .download-btn:active{transform:translateY(0);box-shadow:0 1px 3px #f2592433}.preview-actions .close-btn{background:var(--white);color:var(--primary-teal);border:1px solid rgba(15,118,110,.15)}.preview-actions .close-btn:hover{background:var(--primary-teal);color:var(--white);border-color:var(--primary-teal);transform:translateY(-1px);box-shadow:0 2px 8px #0f766e4d}.preview-actions .close-btn:active{transform:translateY(0)}@media(max-width:768px){.file-grid{grid-template-columns:1fr;gap:1rem}.data-access-header{padding:1rem;min-height:auto;flex-direction:column;align-items:flex-start;gap:1rem}.header-logo{position:relative;left:auto;top:auto;transform:none}.company-logo{width:200px}.header-title{position:relative;left:auto;top:auto;transform:none;width:100%;align-items:flex-start}.header-actions{position:relative;right:auto;top:auto;transform:none;align-self:flex-end}.data-access-breadcrumbs{padding:.75rem 1rem}.data-access-controls{padding:1rem;flex-direction:column;align-items:stretch}.current-path{max-width:100%}.data-access-content{padding:1rem}.preview-content{max-width:98vw;max-height:95vh;width:100%;min-width:100%}.preview-header{padding:1rem 1.5rem;flex-wrap:wrap;gap:1rem}.preview-header h3{font-size:1.125rem;padding-right:.5rem}.preview-header-actions{width:100%;justify-content:space-between;order:2}.back-to-explorer-btn{font-size:.75rem;padding:.5rem 1rem}.preview-header .close-btn{width:36px;height:36px;font-size:1.25rem}.preview-data{padding:1.5rem}.preview-actions{padding:1rem 1.5rem;flex-direction:column;gap:.75rem}.preview-actions-left{width:100%}.preview-actions .back-to-explorer-btn,.preview-actions .download-btn,.preview-actions .close-btn{width:100%;justify-content:center}.pdf-viewer-wrapper,.json-preview-wrapper,.csv-preview-wrapper,.text-preview-wrapper{height:calc(95vh - 250px);min-height:300px}}.alerts-management-container{min-height:100vh;background:linear-gradient(135deg,var(--white) 0%,var(--light-gray) 100%);padding:0;font-family:var(--font-primary)}.alerts-content-wrapper{padding:2rem;max-width:1400px;margin:0 auto}.alerts-header{background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 50%,var(--primary-teal-light) 100%);border-bottom:4px solid var(--accent-orange);padding:16px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 20px var(--overlay-medium);font-family:var(--font-primary);min-height:70px;color:var(--white);position:relative;overflow:visible;margin-bottom:24px}.alerts-header-content{position:absolute;left:0;top:50%;transform:translateY(-50%);z-index:10;display:flex;align-items:center;padding-left:- 10px}.header-logo{display:flex;align-items:left}.alerts-logo{height:auto;width:400px;max-height:300px;object-fit:contain;filter:brightness(0) invert(1);transition:transform .3s ease;pointer-events:none;-webkit-user-select:none;user-select:none}.alerts-logo:hover{transform:scale(1.05);filter:brightness(0) invert(1) drop-shadow(0 0 8px rgba(255,255,255,.3))}.alerts-title-section{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:5;pointer-events:none;width:auto;text-align:center}.alerts-title{font-size:1.4rem;font-weight:600;color:var(--white);margin:0;line-height:1.2;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font-primary);pointer-events:auto}.alerts-subtitle{margin:.25rem 0 0;font-size:.75rem;color:var(--white);opacity:.8;font-weight:400;text-transform:none;letter-spacing:.02em}.alerts-header-actions{display:flex;gap:12px;align-items:center;flex-shrink:0;position:absolute;right:32px;top:50%;transform:translateY(-50%);z-index:10}.alerts-close-btn,.alerts-header-actions .alerts-close-btn,.icon-btn.alerts-close-btn{background:#ffffff1a!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:8px!important;width:44px!important;height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;transition:all .2s ease!important;color:var(--white)!important;font-size:1.5rem!important;font-weight:300!important;font-family:var(--font-primary)!important;padding:0!important;line-height:1!important;flex-shrink:0!important}.alerts-close-btn:hover,.alerts-header-actions .alerts-close-btn:hover,.icon-btn.alerts-close-btn:hover{background:var(--accent-orange)!important;border-color:var(--accent-orange)!important;color:var(--white)!important;transform:scale(1.05)!important;box-shadow:0 4px 12px #f2592466!important}.alerts-delete-all-btn{background:#dc354526;color:#fff;border:2px solid rgba(255,255,255,.4);padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.alerts-delete-all-btn:hover:not(:disabled){background:#dc3545;border-color:#dc3545;color:var(--white);transform:translateY(-1px);box-shadow:0 2px 8px #dc354566}.alerts-delete-all-btn:disabled{opacity:.4;cursor:not-allowed;background:#ffffff1a;color:#ffffff80;border-color:#fff3}.alerts-refresh-btn{background:#ffffff1a;color:var(--white);border:2px solid rgba(255,255,255,.3);padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.alerts-refresh-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff80;color:var(--white);transform:translateY(-1px);box-shadow:0 2px 8px #0f766e4d}.alerts-refresh-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--white);color:#6c757d;border-color:#6c757d}.alerts-summary-section{margin-top:3rem;padding-top:2rem;border-top:2px solid rgba(15,118,110,.1)}.alerts-summary-title{font-size:1.5rem;font-weight:600;color:var(--primary-teal);margin-bottom:1.5rem;font-family:var(--font-primary)}.alerts-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--white);border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(15,118,110,.1);display:flex;align-items:center;gap:1rem;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001a}.stat-card.active{border-left:4px solid #2196F3}.stat-card.critical{border-left:4px solid #f44336}.stat-card.warning{border-left:4px solid #ff9800}.stat-card.resolved{border-left:4px solid #4caf50}.stat-card.outdated{border-left:4px solid #9e9e9e}.stat-icon{font-size:2.5rem;line-height:1}.stat-content{flex:1}.stat-value{font-size:2rem;font-weight:700;color:var(--primary-teal);line-height:1;margin-bottom:.25rem}.stat-label{font-size:.875rem;color:#0f766eb3;font-weight:500}.alerts-status-info{background:var(--white);border-radius:16px;padding:1.75rem;margin-bottom:1.5rem;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(15,118,110,.1);display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.status-info-item{display:flex;align-items:flex-start;gap:1.5rem;padding:1.75rem;background:linear-gradient(135deg,#fff,#0f766e05);border-radius:14px;border:1.5px solid rgba(15,118,110,.1);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000a}.status-info-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0f766e33;transition:all .3s ease}.status-info-item.active:before{background:linear-gradient(180deg,#2196f3,#1976d2);width:4px}.status-info-item.acknowledged:before{background:linear-gradient(180deg,#9c27b0,#7b1fa2);width:4px}.status-info-item.resolved:before{background:linear-gradient(180deg,#4caf50,#388e3c);width:4px}.status-info-item:hover{background:linear-gradient(135deg,#fff,#0f766e0a);transform:translateY(-3px);box-shadow:0 6px 20px #0000001a;border-color:#0f766e33}.status-info-item.active:hover{border-color:#2196f34d;background:linear-gradient(135deg,#fff,#2196f308)}.status-info-item.acknowledged:hover{border-color:#9c27b04d;background:linear-gradient(135deg,#fff,#9c27b008)}.status-info-item.resolved:hover{border-color:#4caf504d;background:linear-gradient(135deg,#fff,#4caf5008)}.status-info-item.outdated:hover{border-color:#9e9e9e4d;background:linear-gradient(135deg,#fff,#9e9e9e08)}.status-info-item:hover:before{width:5px}.status-indicator{width:24px;height:24px;min-width:24px;min-height:24px;max-width:24px;max-height:24px;border-radius:50%;flex-shrink:0;margin-top:.125rem;position:relative;display:inline-block;aspect-ratio:1 / 1}.status-indicator:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;background:inherit;opacity:.3;animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-ring{0%{transform:translate(-50%,-50%) scale(1);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.5);opacity:.1}to{transform:translate(-50%,-50%) scale(1.8);opacity:0}}.status-indicator.active{background:linear-gradient(135deg,#2196f3,#1976d2);box-shadow:0 0 0 3px #2196f326,0 0 0 6px #2196f31a,0 4px 12px #2196f34d}.status-indicator.acknowledged{background:linear-gradient(135deg,#9c27b0,#7b1fa2);box-shadow:0 0 0 3px #9c27b026,0 0 0 6px #9c27b01a,0 4px 12px #9c27b04d}.status-indicator.resolved{background:linear-gradient(135deg,#4caf50,#388e3c);box-shadow:0 0 0 3px #4caf5026,0 0 0 6px #4caf501a,0 4px 12px #4caf504d}.status-indicator.outdated{background:linear-gradient(135deg,#9e9e9e,#757575);box-shadow:0 0 0 3px #9e9e9e26,0 0 0 6px #9e9e9e1a,0 4px 12px #9e9e9e4d}.status-info-item>div{flex:1;min-width:0}.status-info-item strong{display:block;font-size:1rem;font-weight:700;color:var(--primary-teal);margin-bottom:.5rem;font-family:var(--font-primary);letter-spacing:-.01em}.status-info-item.active strong{color:#1976d2}.status-info-item.acknowledged strong{color:#7b1fa2}.status-info-item.resolved strong{color:#388e3c}.status-info-item p{font-size:.875rem;color:#0f766ebf;margin:0;line-height:1.6;font-family:var(--font-primary)}.alerts-filters{background:var(--white);border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(15,118,110,.1);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:600;color:var(--primary-teal);font-family:var(--font-primary)}.filter-select,.filter-input{padding:.625rem .875rem;border:2px solid rgba(15,118,110,.2);border-radius:8px;font-size:.875rem;font-family:var(--font-primary);color:var(--primary-teal);background:var(--white);transition:all .2s ease}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #0f766e1a}.alerts-results-count{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--white);border-radius:12px 12px 0 0;border:1px solid rgba(15,118,110,.1);border-bottom:none;margin-bottom:0;font-size:.875rem;gap:1rem;flex-wrap:wrap}.alerts-results-count>span{color:#0f766ee6;font-weight:600}.alerts-results-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;color:#0f766ecc;font-weight:500}.alerts-results-count .alerts-delete-all-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#dc262659;color:#fff;box-shadow:0 4px 12px #dc262640}.alerts-results-count .alerts-delete-all-btn:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);border-color:#b91c1c80;box-shadow:0 6px 16px #dc262659}.alerts-results-count .alerts-refresh-btn{background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-dark) 100%);border-color:#0f766e59;color:#fff;box-shadow:0 4px 12px #0f766e38}.alerts-results-count .alerts-refresh-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-teal-dark) 0%,#0b5f59 100%);border-color:#0f766e80;box-shadow:0 6px 16px #0f766e4d}.alerts-results-count .alerts-delete-all-btn:disabled,.alerts-results-count .alerts-refresh-btn:disabled{opacity:.55;box-shadow:none}.clear-filters-btn{padding:.5rem 1rem;background:#0f766e1a;color:var(--primary-teal);border:1px solid rgba(15,118,110,.2);border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;font-family:var(--font-primary)}.clear-filters-btn:hover{background:#0f766e33;transform:translateY(-1px)}.alerts-list-container{background:var(--white);border-radius:0 0 12px 12px;padding:1.5rem;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(15,118,110,.1);border-top:none}.alerts-loading,.alerts-error,.alerts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#0f766eb3}.alerts-loading span,.alerts-error span,.alerts-empty span{font-size:3rem;margin-bottom:1rem}.loading-spinner{width:40px;height:40px;border:3px solid rgba(15,118,110,.2);border-top-color:var(--primary-teal);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.retry-btn{margin-top:1rem;padding:.625rem 1.25rem;background:var(--primary-teal);color:var(--white);border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-btn:hover{background:var(--primary-teal-dark);transform:translateY(-1px)}.alerts-list{display:flex;flex-direction:column;gap:1rem}.alert-card{background:var(--white);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;border:2px solid rgba(15,118,110,.1);cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.alert-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0f766e33;transition:all .3s ease}.alert-card:after{content:"";position:absolute;top:1rem;right:1rem;width:12px;height:12px;border-radius:50%;background:#0f766e4d;transition:all .3s ease}.alert-card.active:after{background:#2196f3;box-shadow:0 0 8px #2196f380}.alert-card.resolved:after{background:#4caf50;box-shadow:0 0 8px #4caf5080}.alert-card.acknowledged:after{background:#9c27b0;box-shadow:0 0 8px #9c27b080}.alert-card.outdated:after{background:#9e9e9e;box-shadow:0 0 8px #9e9e9e80}.alert-card.red:before{background:#f44336}.alert-card.yellow:before{background:#ff9800}.alert-card:hover{transform:translate(4px);box-shadow:0 4px 16px #0000001f}.alert-card.resolved{opacity:.85;background:linear-gradient(135deg,rgba(76,175,80,.05) 0%,var(--white) 100%);border-color:#4caf504d}.alert-card.resolved:before{background:#4caf50;width:6px}.alert-card.acknowledged{opacity:.9;background:linear-gradient(135deg,rgba(156,39,176,.05) 0%,var(--white) 100%);border-color:#9c27b04d}.alert-card.outdated{opacity:.75;background:linear-gradient(135deg,rgba(158,158,158,.05) 0%,var(--white) 100%);border-color:#9e9e9e4d}.alert-card.outdated:before{background:#9e9e9e;width:6px}.alert-card.acknowledged:before{background:#9c27b0;width:5px}.alert-card.active{background:var(--white);border-color:#0f766e33}.alert-card.active:before{width:4px}.alert-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem;gap:1rem}.alert-card-title{display:flex;align-items:center;gap:1rem;flex:1}.alert-icon{font-size:2rem;line-height:1}.alert-card-title h3{font-size:1.25rem;font-weight:700;color:var(--primary-teal);margin:0 0 .25rem;font-family:var(--font-primary)}.alert-card-title p{font-size:.875rem;color:#0f766eb3;margin:0}.alert-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge{padding:.375rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge.severity.red{background:#f443361a;color:#f44336;border:1px solid rgba(244,67,54,.2)}.badge.severity.yellow{background:#ff98001a;color:#ff9800;border:1px solid rgba(255,152,0,.2)}.badge.status.active{background:#2196f31a;color:#2196f3;border:1px solid rgba(33,150,243,.2)}.badge.status.resolved{background:#4caf501a;color:#4caf50;border:1px solid rgba(76,175,80,.2)}.badge.status.acknowledged{background:#9c27b01a;color:#9c27b0;border:1px solid rgba(156,39,176,.2)}.badge.status.outdated{background:#9e9e9e1a;color:#757575;border:1px solid rgba(158,158,158,.2)}.alert-card-body{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.alert-info-row{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.alert-label{font-weight:600;color:#0f766eb3;min-width:100px}.alert-value{color:var(--primary-teal);font-weight:500}.alert-card-actions{display:flex;gap:1rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid rgba(15,118,110,.1);align-items:center;justify-content:space-between;width:100%}.action-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.8125rem;font-weight:600;font-family:var(--font-primary);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.625rem;white-space:nowrap;line-height:1.2;min-height:40px;box-sizing:border-box;vertical-align:middle;flex:1 1 auto;min-width:120px}.action-btn.acknowledge{background:#9c27b01a;color:#9c27b0;border:1.5px solid rgba(156,39,176,.25)}.action-btn.acknowledge:hover:not(:disabled){background:#9c27b033;border-color:#9c27b066;transform:translateY(-1px);box-shadow:0 2px 8px #9c27b033}.action-btn.resolve{background:#4caf501a;color:#4caf50;border:1.5px solid rgba(76,175,80,.25)}.action-btn.resolve:hover:not(:disabled){background:#4caf5033;border-color:#4caf5066;transform:translateY(-1px);box-shadow:0 2px 8px #4caf5033}.action-btn.resend{background:#0f766e1a;color:var(--primary-teal);border:1.5px solid rgba(15,118,110,.25)}.action-btn.resend:hover:not(:disabled){background:#0f766e33;border-color:#0f766e66;transform:translateY(-1px);box-shadow:0 2px 8px #0f766e33}.action-btn.view-email{background:#2196f31a;color:#2196f3;border:1.5px solid rgba(33,150,243,.25)}.action-btn.view-email:hover:not(:disabled){background:#2196f333;border-color:#2196f366;transform:translateY(-1px);box-shadow:0 2px 8px #2196f333}.action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.action-icon{font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px;text-align:center;vertical-align:middle}.action-text{font-size:.8125rem;line-height:1.2;white-space:nowrap;font-weight:600;vertical-align:middle;display:inline-block}.action-spinner{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;display:inline-block;flex-shrink:0}.alerts-refresh-btn:focus-visible,.action-btn:focus-visible,.filter-select:focus-visible,.filter-input:focus-visible,.close-btn:focus-visible{outline:2px solid var(--primary-teal);outline-offset:2px}.alert-card:focus-visible{outline:2px solid var(--primary-teal);outline-offset:2px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.alert-card,.stat-card{animation:fadeInUp .3s ease}.stat-card:nth-child(1){animation-delay:.05s}.stat-card:nth-child(2){animation-delay:.1s}.stat-card:nth-child(3){animation-delay:.15s}.stat-card:nth-child(4){animation-delay:.2s}.stat-card:nth-child(5){animation-delay:.25s}.alert-details-modal{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.alert-details-content{background:var(--white);border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.alert-details-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:2px solid rgba(15,118,110,.1);background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-dark) 100%);border-radius:16px 16px 0 0}.alert-details-header h2{font-size:1.5rem;font-weight:700;color:var(--white);margin:0;font-family:var(--font-primary)}.close-btn{background:#fff3;color:var(--white);border:none;width:36px;height:36px;border-radius:50%;font-size:1.5rem;line-height:1;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.alert-details-body{padding:2rem}.detail-section{margin-bottom:2rem}.detail-section:last-child{margin-bottom:0}.detail-section h3{font-size:1.125rem;font-weight:700;color:var(--primary-teal);margin:0 0 1rem;font-family:var(--font-primary);padding-bottom:.75rem;border-bottom:2px solid rgba(15,118,110,.1)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-item label{font-size:.875rem;font-weight:600;color:#0f766eb3;font-family:var(--font-primary)}.detail-item span{font-size:.9375rem;color:var(--primary-teal);font-weight:500}.detail-actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid rgba(15,118,110,.1)}.action-buttons-info{background:#0f766e0d;border-left:3px solid var(--primary-teal);border-radius:6px;padding:1rem;margin-bottom:.5rem}.action-info-text{font-size:.875rem;color:#0f766ecc;line-height:1.6;margin:0;font-family:var(--font-primary)}.action-info-text strong{color:var(--primary-teal);font-weight:600}.detail-actions .action-btn{width:100%;justify-content:center}.alerts-list-container::-webkit-scrollbar,.alert-details-content::-webkit-scrollbar{width:8px}.alerts-list-container::-webkit-scrollbar-track,.alert-details-content::-webkit-scrollbar-track{background:var(--light-gray);border-radius:4px}.alerts-list-container::-webkit-scrollbar-thumb,.alert-details-content::-webkit-scrollbar-thumb{background:#0f766e4d;border-radius:4px}.alerts-list-container::-webkit-scrollbar-thumb:hover,.alert-details-content::-webkit-scrollbar-thumb:hover{background:#0f766e80}.email-preview-modal{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001;padding:2rem;animation:fadeIn .3s ease}.email-preview-content{background:var(--white);border-radius:16px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #0003;animation:slideUp .3s ease}.email-preview-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:2px solid rgba(15,118,110,.1);background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-dark) 100%);border-radius:16px 16px 0 0;flex-shrink:0}.email-preview-header h2{font-size:1.5rem;font-weight:700;color:var(--white);margin:0;font-family:var(--font-primary)}.email-preview-body{flex:1;overflow:hidden;display:flex;flex-direction:column;background:var(--white)}.email-loading,.email-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#0f766eb3}.email-loading span,.email-empty span{font-size:3rem;margin-bottom:1rem}.email-iframe{width:100%;height:100%;border:none;flex:1;min-height:500px;background:var(--white)}.email-iframe::-webkit-scrollbar{width:8px}.email-iframe::-webkit-scrollbar-track{background:var(--light-gray)}.email-iframe::-webkit-scrollbar-thumb{background:#0f766e4d;border-radius:4px}.email-iframe::-webkit-scrollbar-thumb:hover{background:#0f766e80}@media(max-width:768px){.alerts-content-wrapper{padding:1rem}.alerts-header{min-height:auto;padding:1rem 16px;flex-direction:column;align-items:stretch;gap:1rem}.alerts-header-content{position:relative;left:auto;top:auto;transform:none;width:100%;justify-content:flex-start}.header-logo{display:none}.alerts-title-section{position:relative;left:auto;top:auto;transform:none;width:100%;align-items:flex-start;margin-top:.5rem}.alerts-title{font-size:1.2rem;text-align:left}.alerts-subtitle{text-align:left;font-size:.7rem}.alerts-header-actions{position:relative;right:auto;top:auto;transform:none;width:100%;justify-content:flex-end;margin-top:.5rem}.alerts-close-btn{width:40px;height:40px;font-size:20px}.alerts-stats{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{padding:1.25rem}.stat-icon{font-size:2rem}.stat-value{font-size:1.75rem}.alerts-status-info,.alerts-filters{grid-template-columns:1fr;padding:1.25rem}.alerts-results-count{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.alerts-results-actions{width:100%;flex-direction:column;gap:.5rem}.alerts-delete-all-btn,.alerts-refresh-btn,.clear-filters-btn{width:100%;justify-content:center}.alert-card{padding:1.25rem}.alert-card-header{flex-direction:column;align-items:flex-start;gap:.75rem}.alert-badges{width:100%;justify-content:flex-start}.alert-card-actions{flex-direction:column;gap:.75rem}.action-btn{width:100%;justify-content:center;min-width:auto;flex:none}.alert-details-content{max-width:100%;margin:1rem;max-height:95vh}.alert-details-header{padding:1.25rem 1.5rem}.alert-details-header h2{font-size:1.25rem}.alert-details-body{padding:1.5rem}.detail-grid{grid-template-columns:1fr;gap:.75rem}.detail-actions{flex-direction:column}.detail-actions .action-btn{width:100%;justify-content:center}.email-preview-modal{padding:1rem}.email-preview-content{max-width:100%;max-height:95vh}.email-preview-header{padding:1.25rem 1.5rem}.email-preview-header h2{font-size:1.25rem}.email-iframe{min-height:400px}}@media(max-width:480px){.alerts-management-container{padding:.75rem}.alerts-header{padding:1.5rem}.alerts-title{font-size:1.25rem}.alerts-subtitle{font-size:.8125rem}.alerts-stats{grid-template-columns:1fr;gap:.75rem}.stat-card,.alerts-filters,.alert-card{padding:1rem}.alert-icon{font-size:1.5rem}.alert-card-title h3{font-size:1.125rem}}.login-transition{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;transition:opacity .6s ease-in-out;overflow:hidden}.login-transition.visible{opacity:1}.ocean-background{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,#0a192f,#112240 40%,#1a365d,#1e3a5f);overflow:hidden}.rain-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.raindrop{position:absolute;top:-10%;left:var(--x);width:var(--size);height:calc(var(--size) * 15);background:linear-gradient(to bottom,#fff0,#ffffff1a 20%,#add8e666,#87cefa80 80%,#6495ed4d);border-radius:50%/60% 60% 40% 40%;opacity:.6;animation:raindrop-fall var(--duration) linear var(--delay) infinite;filter:blur(.3px);box-shadow:0 0 2px #add8e64d,0 0 4px #87cefa33}@keyframes raindrop-fall{0%{top:-10%;opacity:0}10%{opacity:.6}90%{opacity:.5}to{top:110%;opacity:0}}.raindrop:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:3px;height:3px;background:radial-gradient(circle,rgba(173,216,230,.6) 0%,rgba(135,206,250,.3) 50%,transparent 100%);border-radius:50%;animation:ripple var(--duration) linear var(--delay) infinite}@keyframes ripple{0%,90%{opacity:0;transform:translate(-50%) scale(0)}95%{opacity:.8;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(2)}}.wave{position:absolute;bottom:0;left:0;width:200%;height:200px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120'%3E%3Cpath d='M0,20 Q300,60 600,20 T1200,20 L1200,120 L0,120 Z' fill='%23ffffff' fill-opacity='0.02'/%3E%3C/svg%3E") repeat-x;animation:wave-animation 20s linear infinite}.wave1{bottom:0;opacity:.3;animation-duration:25s}.wave2{bottom:20px;opacity:.2;animation-duration:30s;animation-delay:-5s}.wave3{bottom:40px;opacity:.15;animation-duration:35s;animation-delay:-10s}@keyframes wave-animation{0%{transform:translate(0) translateY(0)}to{transform:translate(-50%) translateY(0)}}.gradient-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,#0f34604d,#0a192fcc);pointer-events:none}.transition-container{position:relative;z-index:2;width:100%;max-width:550px;padding:20px}.transition-card{background:#ffffff08;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:48px 40px;box-shadow:0 8px 32px #0000004d,0 2px 8px #0003,inset 0 1px #ffffff0d;animation:card-appear .8s cubic-bezier(.16,1,.3,1)}@keyframes card-appear{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.brand-icon{display:flex;justify-content:center;margin-bottom:32px;animation:icon-pulse 2s ease-in-out infinite}.icon-circle{width:80px;height:80px;background:linear-gradient(135deg,#f2592426,#0f346026);border:2px solid rgba(242,89,36,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #f2592433,inset 0 1px #ffffff1a}.metocean-icon{font-size:40px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}@keyframes icon-pulse{0%,to{transform:scale(1);box-shadow:0 4px 16px #f2592433}50%{transform:scale(1.05);box-shadow:0 6px 24px #f259244d}}.welcome-content{text-align:center;margin-bottom:36px;animation:fade-in-up .8s cubic-bezier(.16,1,.3,1) .2s both}.welcome-title{font-size:1.75rem;font-weight:300;color:#ffffffe6;margin:0 0 8px;letter-spacing:.5px}.user-name{font-size:1.5rem;font-weight:600;background:linear-gradient(135deg,#f25924,#ff8a5b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:.3px}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.services-summary{margin-bottom:36px;animation:fade-in-up .8s cubic-bezier(.16,1,.3,1) .4s both}.services-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}.services-label{font-size:.95rem;font-weight:500;color:#ffffffb3;letter-spacing:.3px}.services-count{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 12px;background:#f2592426;border:1px solid rgba(242,89,36,.3);border-radius:16px;font-size:.9rem;font-weight:600;color:#f25924}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.service-badge{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;transition:all .3s cubic-bezier(.16,1,.3,1);opacity:0;animation:badge-appear .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes badge-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.service-badge:hover{background:#f2592414;border-color:#f2592433;transform:translateY(-2px)}.badge-icon{font-size:1.25rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));flex-shrink:0}.badge-name{font-size:.8rem;font-weight:500;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.more-badge{background:#f259241a;border-color:#f2592433}.more-badge .badge-icon{font-size:1rem;font-weight:700;color:#f25924}.more-badge .badge-name{color:#f25924}.progress-section{animation:fade-in-up .8s cubic-bezier(.16,1,.3,1) .6s both}.progress-bar{width:100%;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden;margin-bottom:12px;box-shadow:inset 0 1px 2px #0003}.progress-fill{height:100%;background:linear-gradient(90deg,#f25924,#ff8a5b,#f25924);background-size:200% 100%;border-radius:2px;transition:width .3s ease-out;animation:progress-shimmer 2s linear infinite;box-shadow:0 0 8px #f2592480}@keyframes progress-shimmer{0%{background-position:200% center}to{background-position:-200% center}}.loading-text{text-align:center;font-size:.9rem;font-weight:500;color:#fff9;margin:0;letter-spacing:.3px}@media(max-width:768px){.raindrop:nth-child(n+25){display:none}.transition-card{padding:36px 28px}.icon-circle{width:70px;height:70px}.metocean-icon{font-size:35px}.welcome-title{font-size:1.5rem}.user-name{font-size:1.3rem}.services-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.service-badge{padding:8px 10px}.badge-icon{font-size:1.1rem}.badge-name{font-size:.75rem}}@media(max-width:480px){.raindrop:nth-child(n+15){display:none}.transition-container{max-width:100%;padding:16px}.transition-card{padding:28px 20px;border-radius:20px}.brand-icon{margin-bottom:24px}.icon-circle{width:60px;height:60px}.metocean-icon{font-size:30px}.welcome-content{margin-bottom:28px}.welcome-title{font-size:1.3rem}.user-name{font-size:1.1rem}.services-summary{margin-bottom:28px}.services-label{font-size:.85rem}.services-count{min-width:28px;height:28px;padding:0 10px;font-size:.8rem}.services-grid{grid-template-columns:1fr 1fr;gap:8px}.service-badge{padding:8px;flex-direction:column;text-align:center;gap:4px}.badge-icon{font-size:1.2rem}.badge-name{font-size:.7rem;white-space:normal;line-height:1.2}.loading-text{font-size:.8rem}}.ocean{height:25%;width:100%;position:absolute;bottom:0;left:0;background:linear-gradient(180deg,#0158711a,#01587166,#015871b3 60%,#015871);z-index:1;overflow:visible;pointer-events:none}.ocean-wave{background:url(/wave.svg) repeat-x;background-size:1600px 198px;position:absolute;width:6400px;height:198px;animation:ocean-wave-animation 7s cubic-bezier(.36,.45,.63,.53) infinite;transform:translateZ(0);opacity:.7;top:-100px;left:0;will-change:margin-left}.ocean-wave:nth-of-type(2){top:-70px;background-size:1600px 198px;animation:ocean-wave-animation 7s cubic-bezier(.36,.45,.63,.53) -.125s infinite,ocean-swell 7s ease -1.25s infinite;opacity:.9}@keyframes ocean-wave-animation{0%{margin-left:0}to{margin-left:-1600px}}@keyframes ocean-swell{0%,to{transform:translate3d(0,-25px,0)}50%{transform:translate3d(0,5px,0)}}@media(max-width:768px){.ocean{height:20%}.ocean-wave{height:150px;background-size:1200px 150px;top:-80px}.ocean-wave:nth-of-type(2){top:-55px;background-size:1200px 150px}}@media(max-width:480px){.ocean{height:18%}.ocean-wave{height:120px;background-size:1000px 120px;top:-65px}.ocean-wave:nth-of-type(2){top:-45px;background-size:1000px 120px}}@media(prefers-reduced-motion:reduce){.login-transition,.transition-card,.welcome-content,.services-summary,.progress-section,.service-badge{animation:none;transition:none}.ocean-wave{animation:none}}.landing-page{min-height:100vh;background:var(--white);font-family:Neue Haas Grotesk Display Pro,Neue Haas Grotesk Text Pro,Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--primary-teal)}.floating-menu-btn{position:fixed;top:2rem;left:2rem;width:56px;height:56px;border-radius:50%;background:#ffffff26;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.25);cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #00000026}.floating-menu-btn:hover{background:#ffffff40;border-color:#ffffff59;transform:scale(1.05);box-shadow:0 6px 25px #0003}.floating-menu-btn.active{opacity:0;pointer-events:none;transform:scale(.8)}.menu-icon{display:flex;flex-direction:column;gap:5px;width:24px;height:20px;position:relative}.menu-icon span{display:block;width:100%;height:2.5px;background:#ff6b35;border-radius:2px;transition:all .4s cubic-bezier(.4,0,.2,1)}.floating-menu-btn.active .menu-icon span:nth-child(1){transform:rotate(45deg) translate(7px,7px);background:#aeefc5}.floating-menu-btn.active .menu-icon span:nth-child(2){opacity:0;transform:translate(-10px);background:#aeefc5}.floating-menu-btn.active .menu-icon span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px);background:#aeefc5}.floating-menu-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.floating-menu-overlay.open{opacity:1;pointer-events:all}.floating-menu{position:fixed;top:2rem;left:2rem;width:360px;max-height:calc(100vh - 4rem);background:var(--white);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(0,36,47,.08);border-radius:16px;box-shadow:0 4px 24px #0000001f,0 8px 48px #00000014;z-index:1000;opacity:0;transform:translate(-10px) scale(.96);pointer-events:none;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column}.floating-menu.open{opacity:1;transform:translate(0) scale(1);pointer-events:all}.floating-menu-header{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,36,47,.08);display:flex;align-items:center;justify-content:space-between;position:relative;min-height:80px;background:linear-gradient(180deg,#fff,#f8f9fa80)}.floating-menu-brand{display:inline-flex;align-items:center;gap:0;flex:1}.floating-menu-brand-logo{height:32px;width:auto;object-fit:contain;display:block}.floating-menu-brand-text{font-family:var(--font-primary);font-size:1.5rem;font-weight:700;color:var(--primary-teal);letter-spacing:-.02em;line-height:1;background:linear-gradient(135deg,var(--primary-teal) 0%,#004d5f 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block}.floating-menu-brand-reg{font-size:.65rem;font-weight:600;color:var(--accent-orange);vertical-align:super;line-height:0;margin-left:.05rem;font-family:Neue Haas Grotesk Display Pro,Neue Haas Grotesk Text Pro,Helvetica Neue,Helvetica,Arial,sans-serif;display:inline-block;transform:translateY(-.15em)}.floating-menu-close-btn{position:absolute;top:1.25rem;right:1.25rem;width:32px;height:32px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;padding:0;z-index:10}.floating-menu-close-btn:hover{background:#00242f0f}.floating-menu-close-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.floating-menu-close-icon{position:relative;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.floating-menu-close-icon span{position:absolute;width:100%;height:2px;background:var(--primary-teal);border-radius:2px;transition:all .3s cubic-bezier(.4,0,.2,1)}.floating-menu-close-icon span:first-child{transform:rotate(45deg)}.floating-menu-close-icon span:last-child{transform:rotate(-45deg)}.floating-menu-close-btn:hover .floating-menu-close-icon span{background:var(--accent-orange);width:110%}.floating-menu-close-btn:active .floating-menu-close-icon span{transform:rotate(45deg) scale(.9)}.floating-menu-close-btn:active .floating-menu-close-icon span:last-child{transform:rotate(-45deg) scale(.9)}.floating-menu-content{padding:.75rem;display:flex;flex-direction:column;gap:.25rem;flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,36,47,.2) transparent}.floating-menu-content::-webkit-scrollbar{width:6px}.floating-menu-content::-webkit-scrollbar-track{background:transparent}.floating-menu-content::-webkit-scrollbar-thumb{background:#00242f33;border-radius:3px}.floating-menu-content::-webkit-scrollbar-thumb:hover{background:#00242f4d}.floating-menu-link{background:transparent;border:none;color:var(--primary-teal);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);font-family:var(--font-primary);cursor:pointer;padding:.875rem 1rem;border-radius:10px;transition:all .2s cubic-bezier(.4,0,.2,1);text-align:left;min-height:44px;display:flex;align-items:center;position:relative;outline:none}.floating-menu-link:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--accent-orange);border-radius:0 2px 2px 0;transition:height .2s cubic-bezier(.4,0,.2,1)}.floating-menu-link:hover{background:#aeefc51f;color:var(--primary-teal);transform:translate(2px)}.floating-menu-link:hover:before{height:60%}.floating-menu-link:focus-visible{background:#aeefc526;outline:2px solid var(--accent-orange);outline-offset:-2px}.floating-menu-link:active{transform:translate(1px);background:#aeefc533}.floating-menu-footer{padding:1rem 1.25rem;border-top:1px solid rgba(0,36,47,.08);display:flex;gap:.75rem;align-items:center;background:linear-gradient(180deg,#f8f9fa80,#fff)}.floating-menu-action{flex:1;background:#aeefc51a;border:1.5px solid rgba(174,239,197,.3);color:var(--primary-teal);padding:.75rem 1rem;border-radius:10px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:var(--font-primary);display:flex;align-items:center;justify-content:center;min-height:44px;outline:none;letter-spacing:.01em}.floating-menu-action:hover{background:#aeefc52e;border-color:#aeefc573;transform:translateY(-1px);box-shadow:0 2px 8px #aeefc533}.floating-menu-action:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.floating-menu-action:active{transform:translateY(0);box-shadow:0 1px 4px #aeefc526}.floating-menu-login{background:linear-gradient(135deg,#ff6b35,#ff8c61);border-color:transparent;color:var(--white);box-shadow:0 2px 8px #ff6b3540;font-weight:var(--font-weight-semibold)}.floating-menu-login:hover{background:linear-gradient(135deg,#ff5722,#ff6b35);box-shadow:0 4px 16px #ff6b3559;transform:translateY(-1px)}.floating-menu-login:focus-visible{outline:2px solid var(--white);outline-offset:2px;box-shadow:0 4px 16px #ff6b3559,0 0 0 2px var(--white)}.floating-menu-login:active{transform:translateY(0);box-shadow:0 2px 8px #ff6b354d}.landing-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:0;overflow-x:hidden;overflow-y:auto}.hero-background{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.hero-background:after{content:"";position:absolute;inset:0;background:#0000008c}.hero-content{position:relative;z-index:1;max-width:1400px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:100vh;color:var(--white);text-align:center;padding:0 2rem;gap:0}.hero-content .hero-stats{max-width:100vw;width:100vw;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%)}.hero-title{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;font-size:clamp(2rem,6.5vw,5rem);font-weight:800;line-height:1.15;text-align:center;letter-spacing:-.02em;padding:0 1rem;gap:0}.hero-title-line1{display:block;line-height:1.15}.hero-title-line2{display:block;margin-top:-.2em;line-height:1.15}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;width:100vw;max-width:100vw;padding:0;margin-top:auto;margin-bottom:0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);border-top:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3);opacity:.9;position:relative;box-sizing:border-box}.stat-item{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;border-right:2px solid rgba(255,255,255,.3);min-height:100px;position:relative;box-sizing:border-box;background:#fff3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.stat-item:first-child{border-left:2px solid rgba(255,255,255,.3)}.stat-item:last-child{border-right:2px solid rgba(255,255,255,.3)}.stat-number{font-size:clamp(2.75rem,5vw,4.2rem);font-weight:700;color:var(--white);margin-bottom:.5rem;line-height:1;display:block;text-shadow:0 2px 10px rgba(0,0,0,.2)}.stat-label{font-size:clamp(.85rem,1.4vw,1rem);color:var(--white);opacity:.85;font-weight:400;line-height:1.5;text-align:center;max-width:220px;letter-spacing:.01em}.hero-title-white{color:var(--white);display:inline;text-shadow:0 4px 20px rgba(0,0,0,.3)}.hero-subtitle-orange{color:#ff6b35;text-shadow:0 4px 20px rgba(0,0,0,.3)}.hero-title-line1 .hero-title-white+.hero-subtitle-orange{display:inline}.hero-center-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;width:100%;padding:6rem 1rem 2rem}.hero-description{font-size:clamp(1rem,2vw,1.25rem);color:#ffffffe6;max-width:700px;line-height:1.7;text-align:center;margin:0;padding:0 1rem;text-shadow:0 2px 10px rgba(0,0,0,.3);font-weight:300;letter-spacing:.01em}.hero-actions{display:flex;gap:1rem;justify-content:center;align-items:center;flex-wrap:wrap}.btn-hero-primary{background:linear-gradient(135deg,#ff6b35,#ff8c61);color:#fff;font-size:clamp(1rem,1.8vw,1.125rem);font-weight:600;padding:1rem 2.5rem;border:none;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #ff6b3566;letter-spacing:.02em;font-family:inherit;min-height:48px}.btn-hero-primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px #ff6b3580;background:linear-gradient(135deg,#ff5722,#ff6b35)}.btn-hero-primary:active{transform:translateY(-1px)}.btn-hero-secondary{background:transparent;color:#fff;font-size:clamp(1rem,1.8vw,1.125rem);font-weight:500;padding:1rem 2.5rem;border:2px solid rgba(255,255,255,.5);border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.02em;font-family:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-height:48px}.btn-hero-secondary:hover{background:#ffffff26;border-color:#fff;transform:translateY(-2px)}.btn-hero-secondary:active{transform:translateY(0)}.hero-subtitle{color:var(--white);display:block;margin-top:.5rem;font-weight:300;letter-spacing:.03em;text-shadow:0 2px 10px rgba(0,0,0,.3)}.landing-page .btn-primary,.landing-page .btn-secondary{padding:1rem 2.5rem;border-radius:var(--rounded-lg);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);font-family:var(--font-primary);cursor:pointer;transition:all var(--duration-base) var(--easing-out);border:2px solid transparent}.landing-page .btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c61);color:var(--white);box-shadow:0 4px 16px #ff6b354d;font-weight:600;letter-spacing:.02em}.landing-page .btn-primary:hover{background:linear-gradient(135deg,#ff5722,#ff7043);transform:translateY(-3px);box-shadow:0 8px 24px #ff6b3566}.landing-page .btn-secondary{background:transparent;color:var(--white);border-color:#ffffff80}.landing-page .btn-secondary:hover{background:#ffffff1a;border-color:var(--white);transform:translateY(-2px)}.landing-page .container{max-width:1400px;margin:0 auto;padding:0 2rem}.landing-about{position:relative;padding:0;overflow:hidden}.about-background{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.about-background:after{content:"";position:absolute;inset:0;background:#000000a6}.about-content{position:relative;z-index:1;padding:6rem 0}.about-title{font-size:clamp(2.25rem,4.5vw,3.5rem);font-weight:800;color:var(--white);text-align:center;margin-bottom:5rem;line-height:1.25;padding:0 2rem;letter-spacing:-.01em;text-shadow:0 4px 20px rgba(0,0,0,.3)}.about-title .highlight-green{color:#aeefc5;text-shadow:0 0 30px rgba(174,239,197,.4)}.about-two-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));gap:4rem;margin-bottom:4rem;padding:0 2rem}.about-column{background:#fffffff7;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:3.5rem;border-radius:24px;box-shadow:0 10px 40px #00000026,0 4px 12px #0000001a;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.6)}.about-column:hover{transform:translateY(-8px);box-shadow:0 20px 60px #0003,0 8px 20px #0000001f}.landing-page .column-title{font-size:clamp(1.65rem,3.2vw,2.25rem);font-weight:800;color:var(--primary-teal);margin-bottom:1.75rem;line-height:1.25;letter-spacing:-.01em}.landing-page .column-description{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--dark-gray);margin-bottom:2rem}.landing-page .leaders-names{display:flex;flex-direction:column;gap:1rem}.landing-page .leader-item{font-size:var(--font-size-base);color:var(--dark-gray);line-height:1.6}.landing-page .leader-item strong{color:var(--primary-teal);font-weight:600}.landing-page .column-paragraph{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--dark-gray);margin-bottom:1.25rem}.landing-page .column-paragraph:first-of-type{font-weight:600}.landing-page .column-paragraph.column-highlight{font-weight:700;color:var(--primary-teal);font-size:clamp(1.125rem,2vw,1.375rem);margin-top:1.5rem;margin-bottom:.75rem;line-height:1.4;letter-spacing:.01em}.landing-page .column-paragraph.column-highlight:last-of-type{margin-bottom:0}.leaders-section-container{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:start;margin-top:4rem;padding:0 2rem;max-width:1400px;margin-left:auto;margin-right:auto}.leaders-text-content{background:#fffffff7;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:3.5rem;border-radius:24px;box-shadow:0 10px 40px #00000026,0 4px 12px #0000001a;border:1px solid rgba(255,255,255,.6);transition:all .4s cubic-bezier(.4,0,.2,1);align-self:start}.leaders-text-content:hover{transform:translateY(-4px);box-shadow:0 20px 60px #0003,0 8px 20px #0000001f}.leaders-image-container{max-width:100%;margin:0;padding:0}.leaders-image{width:100%;height:auto;border-radius:24px;box-shadow:0 20px 60px #00000040,0 8px 24px #00000026;border:4px solid rgba(255,255,255,.8);transition:transform .4s cubic-bezier(.4,0,.2,1);display:block}.leaders-image:hover{transform:scale(1.02)}.leaders-captions{display:flex;justify-content:space-between;align-items:flex-start;width:100%;margin:1.5rem auto 0;gap:1rem;padding:0}.leader-caption{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:1.25rem 1rem;border-radius:12px;box-shadow:0 2px 12px #00000026;border:1px solid rgba(255,255,255,.25);transition:all .3s ease}.leader-caption:hover{transform:translateY(-2px);background:#ffffff40;box-shadow:0 4px 16px #0003}.leader-caption strong{font-size:clamp(.95rem,1.5vw,1.125rem);font-weight:700;color:#aeefc5;display:block;text-shadow:0 2px 8px rgba(0,0,0,.3)}.leader-caption span{font-size:clamp(.8125rem,1.2vw,.9375rem);color:#fffffff2;display:block;line-height:1.4;text-shadow:0 1px 4px rgba(0,0,0,.3)}.landing-page .section-title{font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-weight-bold);color:var(--primary-teal);text-align:center;margin-bottom:2rem}.landing-page .section-description{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--dark-gray);text-align:center;max-width:900px;margin:0 auto 2rem}.section-subtitle{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--primary-teal);text-align:center;margin-top:2rem;margin-bottom:4rem}.about-leaders{margin-top:5rem;padding-top:4rem;border-top:2px solid var(--primary-teal-alpha-20)}.leaders-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--primary-teal);text-align:center;margin-bottom:1.5rem}.leaders-description{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--dark-gray);text-align:center;max-width:800px;margin:0 auto 3rem}.leaders-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.leader-card{background:var(--light-gray);padding:2rem;border-radius:var(--rounded-lg);text-align:center;transition:all var(--duration-base) var(--easing-out);border:2px solid transparent}.leader-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--accent-orange-alpha-30);background:var(--white)}.leader-card h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--primary-teal);margin-bottom:.5rem}.leader-card p{color:var(--medium-gray);font-size:var(--font-size-base)}.about-business{margin-top:5rem;padding-top:4rem;border-top:2px solid var(--primary-teal-alpha-20)}.business-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--primary-teal);text-align:center;margin-bottom:2rem}.business-paragraph{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--dark-gray);text-align:center;max-width:900px;margin:0 auto 1.5rem}.business-paragraph:first-of-type{font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg)}.landing-solutions{position:relative;padding:0;overflow:hidden}.solutions-background{position:absolute;inset:0 0 50%;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.solutions-background:after{content:"";position:absolute;inset:0;background:#0009}.solutions-content{position:relative;z-index:1}.solutions-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--white);text-align:center;margin-bottom:1.5rem;line-height:1.3;padding-top:6rem}.solutions-title .highlight-green{color:#aeefc5}.solutions-subtitle{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:400;color:var(--white);text-align:center;margin-bottom:1rem;line-height:1.4}.solutions-description{font-size:clamp(1rem,2vw,1.25rem);font-weight:300;color:var(--white);text-align:center;margin-bottom:6rem;padding-bottom:6rem;line-height:1.5;max-width:900px;margin-left:auto;margin-right:auto}.solutions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.solution-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2.5rem;border-radius:var(--rounded-xl);box-shadow:var(--shadow-base);transition:all var(--duration-base) var(--easing-out);border:2px solid transparent}.solution-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--accent-orange-alpha-30);background:#fff}.solution-icon{font-size:3rem;margin-bottom:1rem}.solution-card h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--primary-teal);margin-bottom:1rem}.solution-card p{color:var(--medium-gray);line-height:var(--line-height-relaxed)}.landing-page .industries-section,.landing-page .services-section{background:var(--white);padding:6rem 0;margin-top:0}.landing-page .services-title{font-size:clamp(2.25rem,4vw,3rem);font-weight:800;color:var(--primary-teal);text-align:center;margin-bottom:5rem;letter-spacing:-.01em;line-height:1.2}.landing-page .services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:2.5rem;max-width:1400px;margin:0 auto;padding:0 2rem}.landing-page .service-card{background:var(--white);padding:3rem;border-radius:20px;box-shadow:0 4px 20px #00000014,0 2px 8px #0000000a;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid rgba(0,0,0,.06);display:flex;flex-direction:column;gap:1.25rem}.landing-page .service-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0000001f,0 6px 16px #00000014;border-color:#ff6b35;border-width:2px}.landing-page .service-icon{font-size:3rem;line-height:1;margin-bottom:.5rem}.landing-page .service-title{font-size:clamp(1.175rem,2vw,1.425rem);font-weight:700;color:var(--primary-teal);margin:0;line-height:1.35;letter-spacing:-.01em}.landing-page .service-description{font-size:.95rem;line-height:1.75;color:#4a5568;margin:0;flex:1;letter-spacing:.01em}.landing-page .industries-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--primary-teal);text-align:center;margin-bottom:2rem}.landing-page .industries-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.landing-page .industry-card{background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-dark) 100%);color:var(--white);padding:2rem;border-radius:var(--rounded-lg);text-align:center;transition:all var(--duration-base) var(--easing-out);cursor:pointer}.landing-page .industry-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--primary-teal-dark) 0%,var(--primary-teal) 100%)}.landing-page .industry-card h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.landing-platform{position:relative;padding:8rem 0;background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-dark) 100%);overflow:hidden}.platform-background{position:absolute;inset:0;background-size:cover;background-position:bottom right;background-repeat:no-repeat;z-index:0;opacity:.5}.platform-background:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#0d4d4dd9,#115e59bf,#0d4d4de6);z-index:1}.platform-content{position:relative;z-index:2}.platform-content .container{max-width:1400px;margin:0 auto;padding:0 2rem;position:relative;display:flex;flex-direction:column;align-items:center}.platform-header{text-align:center;margin-bottom:4rem;max-width:1000px;margin-left:auto;margin-right:auto;padding:0;display:flex;flex-direction:column;align-items:center;gap:1.25rem;position:relative;z-index:2;width:100%}.platform-subtitle{font-size:clamp(1.125rem,2vw,1.5rem);font-weight:600;color:#aeefc5;line-height:1.5;text-align:center;max-width:900px;margin:0 auto;width:100%}.platform-title{font-size:clamp(2.75rem,5.5vw,4rem);font-weight:800;color:var(--white);margin:0;line-height:1.15;letter-spacing:-.03em;text-align:center}.platform-description{font-size:clamp(1rem,1.8vw,1.125rem);color:#fffffff2;line-height:1.8;text-align:center;max-width:900px;margin:0 auto}.platform-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:2rem;margin-bottom:4rem;max-width:1200px;margin-left:auto;margin-right:auto;position:relative;z-index:2;width:100%}.platform-feature-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2.5rem;border-radius:20px;box-shadow:0 8px 32px #00000026,0 4px 16px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:1rem}.platform-feature-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #0003,0 8px 24px #00000026;border-color:#aeefc5}.feature-title{font-size:clamp(1.25rem,2vw,1.5rem);font-weight:700;color:var(--primary-teal);margin:0;line-height:1.3;letter-spacing:-.01em}.feature-description{font-size:clamp(.9375rem,1.5vw,1rem);color:#4a5568;line-height:1.7;margin:0;flex:1}.platform-cta{text-align:center;margin-top:3rem;position:relative;z-index:2}.btn-platform-primary{background:linear-gradient(135deg,#ff6b35,#ff8c61);color:var(--white);font-size:clamp(1.125rem,2vw,1.25rem);font-weight:700;padding:1.25rem 3.5rem;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #ff6b354d;letter-spacing:.02em;text-transform:none}.btn-platform-primary:hover{transform:translateY(-3px);box-shadow:0 12px 32px #ff6b3566;background:linear-gradient(135deg,#ff8c61,#ff6b35)}.btn-platform-primary:active{transform:translateY(-1px)}.landing-partners{padding:8rem 0;background:linear-gradient(135deg,#0d4d4d,#115e59);position:relative;overflow:hidden}.landing-partners:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.03)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)" /></svg>');opacity:.5}.partners-title{font-size:clamp(2.25rem,4vw,3rem);font-weight:800;color:var(--white);text-align:center;margin-bottom:1.5rem;letter-spacing:-.01em;line-height:1.2;position:relative;z-index:1;text-shadow:0 2px 10px rgba(0,0,0,.2)}.partners-description{font-size:clamp(1rem,2vw,1.25rem);font-weight:400;color:#ffffffe6;text-align:center;max-width:800px;margin:0 auto 5rem;line-height:1.6;position:relative;z-index:1}.partners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem;margin-top:4rem;align-items:center;max-width:1200px;margin-left:auto;margin-right:auto;position:relative;z-index:1}.partner-logo-wrapper{background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2.5rem;border-radius:20px;text-align:center;min-height:200px;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.15);box-shadow:0 4px 20px #0003;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.partner-logo-wrapper:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ff6b3526,#aeefc526);opacity:0;transition:opacity .4s ease}.partner-logo-wrapper:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0000004d;border-color:#ff6b3566;background:#ffffff1f}.partner-logo-wrapper:hover:before{opacity:1}.partner-logo-img{max-width:100%;max-height:120px;width:auto;height:auto;object-fit:contain;filter:brightness(0) invert(1) opacity(.9);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.partner-logo-wrapper:hover .partner-logo-img{filter:brightness(0) invert(1) opacity(1);transform:scale(1.05)}.landing-contact{position:relative;background-size:cover;background-position:center;background-repeat:no-repeat;min-height:100vh;display:flex;align-items:center;padding:6rem 0;margin-bottom:0;overflow:hidden}.contact-overlay{position:absolute;inset:0;background:linear-gradient(to right,#fff5f0fa,#fff5f0f2 40%,#fff5f04d);z-index:0}.landing-contact .container{position:relative;z-index:1;width:100%;height:100%;min-height:100vh;display:flex;align-items:center;justify-content:flex-start;padding-left:2rem;padding-right:2rem}.landing-contact:before{content:"";position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,rgba(255,107,53,.15) 0%,transparent 70%);border-radius:50%;animation:float 20s ease-in-out infinite}.landing-contact:after{content:"";position:absolute;bottom:-30%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(174,239,197,.2) 0%,transparent 70%);border-radius:50%;animation:float 15s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-30px) scale(1.1)}}.landing-contact .section-title{color:#aeefc5;position:relative;z-index:1;font-size:clamp(2.25rem,4vw,3rem);font-weight:800;margin-bottom:1rem;letter-spacing:-.01em}.landing-contact .section-title span{color:#aeefc5;position:relative}.landing-page .contact-form-container{max-width:550px;background:#fffffffa;padding:2rem 2.25rem;border-radius:20px;box-shadow:0 20px 60px #00000026,0 10px 30px #0000001a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.9);margin-left:0;position:absolute;top:50%;left:2rem;transform:translateY(-50%);max-height:90vh;overflow-y:auto}.landing-page .contact-form-container .section-title{text-align:left;margin-bottom:1.5rem;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;color:#aeefc5!important;position:relative;display:block;width:100%;padding-bottom:1rem}.landing-page .contact-form-container .section-title:after{content:"";position:absolute;bottom:0;left:0;width:0;height:4px;background:linear-gradient(90deg,#ff6b35,#ff8c61);border-radius:2px;animation:lineExpand .8s ease-out forwards;animation-delay:.3s}@keyframes lineExpand{0%{width:0}to{width:100%}}.landing-page .contact-form{display:flex;flex-direction:column;gap:.875rem}.landing-page .form-row+.form-group{margin-top:-.25rem}.landing-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.landing-page .form-group{display:flex;flex-direction:column;gap:.3125rem}.landing-page .form-group label{font-weight:600;font-size:.8125rem;color:#374151;letter-spacing:.01em;margin-bottom:.25rem;font-family:var(--font-primary);display:block}.landing-page .form-group input{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#111827;font-family:var(--font-primary);font-size:.9375rem;font-weight:400;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;height:44px;width:100%}.landing-page .form-group textarea{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#111827;font-family:var(--font-primary);font-size:.9375rem;font-weight:400;line-height:1.5;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;resize:vertical;min-height:60px;height:60px;width:100%}.landing-page .form-group input::placeholder,.landing-page .form-group textarea::placeholder{color:#9ca3af;font-weight:400;opacity:.7}.landing-page .form-group input:hover,.landing-page .form-group textarea:hover{border-color:#d1d5db;box-shadow:0 2px 6px #00000014}.landing-page .form-group input:focus,.landing-page .form-group textarea:focus{outline:none;border-color:#ff6b35;background:#fff;box-shadow:0 0 0 4px #ff6b351a,0 2px 4px #0000000d}.landing-page .form-group input:focus:hover,.landing-page .form-group textarea:focus:hover{border-color:#ff6b35}.landing-page .contact-form .btn-primary{margin-top:.25rem;padding:.9375rem 2rem;background:linear-gradient(135deg,#ff6b35,#ff8456);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #ff6b354d;letter-spacing:.02em;width:100%;font-family:var(--font-primary);text-transform:none}.landing-page .contact-form .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ff6b3566;background:linear-gradient(135deg,#ff5722,#ff6b35)}.landing-page .contact-form .btn-primary:active{transform:translateY(0);box-shadow:0 4px 12px #ff6b3559}.landing-page .contact-form .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.landing-page .form-message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9375rem;line-height:1.5}.landing-page .form-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.landing-page .form-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.landing-page .contact-alternative{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15)}.landing-page .contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.landing-page .contact-method{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;border-radius:12px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid transparent;text-align:left}.landing-page .contact-method.email-method{background:#ff6b351f;border-color:#ff6b3540}.landing-page .contact-method.email-method:hover{background:#ff6b3533;border-color:#ff6b3566;transform:translateY(-1px)}.landing-page .contact-method.whatsapp-method{background:#25d3661f;border-color:#25d36640}.landing-page .contact-method.whatsapp-method:hover{background:#25d36633;border-color:#25d36666;transform:translateY(-1px)}.landing-page .contact-method:active{transform:translateY(0)}.landing-page .method-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.8;margin-bottom:.125rem}.landing-page .contact-method.email-method .method-label{color:#ff6b35}.landing-page .contact-method.whatsapp-method .method-label{color:#25d366}.landing-page .method-value{font-size:.8125rem;font-weight:500;line-height:1.3;word-break:break-word}.landing-page .contact-method.email-method .method-value,.landing-page .contact-method.whatsapp-method .method-value{color:#1f2937}.landing-footer{background:#3d3f42;color:var(--white);padding:4rem 0 2rem;position:relative;z-index:10;margin-top:0}.landing-page .footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4rem;margin-bottom:3rem;align-items:start}.landing-page .footer-column{display:flex;flex-direction:column}.landing-page .footer-title{color:#ff6b35;font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;letter-spacing:.02em}.landing-page .footer-links{display:flex;flex-direction:column;gap:.75rem}.landing-page .footer-links button{background:none;border:none;color:var(--white);text-align:left;padding:0;font-size:1rem;cursor:pointer;transition:color .3s ease;font-family:var(--font-primary)}.landing-page .footer-links button:hover,.landing-page .footer-links button.highlight{color:#ff6b35}.landing-page .footer-center{display:flex;justify-content:center;align-items:center}.landing-page .footer-logo{max-width:200px;height:auto}.landing-page .footer-contact{text-align:right}.landing-page .footer-contact-info{display:flex;flex-direction:column;gap:.5rem}.landing-page .contact-link{color:var(--white);text-decoration:none;font-size:1rem;transition:color .3s ease}.landing-page .contact-link:hover{color:#ff6b35}.landing-page .contact-address{color:var(--white);font-size:1rem;line-height:1.6;margin:0}.landing-page .footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);color:#ffffffb3;font-size:.9rem}@media(max-width:1024px){.contact-content{grid-template-columns:1fr}.about-two-columns{padding:0 1.5rem;gap:2.5rem}.about-column{padding:3rem 2.5rem}.landing-contact .container{justify-content:center;padding-left:1rem;padding-right:1rem;min-height:600px}.contact-form-container{max-width:100%;padding:2.25rem 2rem;margin:0 auto;position:relative;top:auto;left:auto;transform:none;border-radius:20px}.contact-form-container .section-title{font-size:clamp(1.75rem,4vw,2.25rem);margin-bottom:1.75rem}.form-row{grid-template-columns:1fr;gap:1.25rem}.contact-form{gap:1.125rem}.hero-stats{grid-template-columns:repeat(2,1fr)}.landing-page .services-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding:0 1.5rem}.landing-page .service-card{padding:2.5rem 2rem}.partners-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:2rem;padding:0 1.5rem}}@media(max-width:1024px){.landing-nav-container{flex-direction:column;gap:1rem;padding:1rem}.landing-nav-logo-center{position:relative;left:auto;top:auto;transform:none;order:-1;margin-bottom:.5rem}.landing-nav-menu{justify-content:center;flex-wrap:wrap;flex:none;width:100%}.landing-nav-actions{justify-content:center;flex:none;width:100%}.hero-stats{grid-template-columns:repeat(2,1fr);gap:0;padding:0;border-top:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3)}.stat-item{border-right:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3);padding:1.75rem 1rem}.stat-item:first-child{border-left:2px solid rgba(255,255,255,.3)}.stat-item:nth-child(2){border-right:2px solid rgba(255,255,255,.3)}.stat-item:nth-child(3){border-left:2px solid rgba(255,255,255,.3);border-right:2px solid rgba(255,255,255,.3)}.stat-item:nth-child(4){border-right:2px solid rgba(255,255,255,.3)}}@media(max-width:768px){.floating-menu-btn{top:1.25rem;left:1.25rem;width:48px;height:48px}.menu-icon{width:20px;height:18px;gap:4px}.menu-icon span{height:2px}.floating-menu{top:1.25rem;left:1.25rem;width:calc(100vw - 2.5rem);max-width:360px;max-height:calc(100vh - 2.5rem)}.floating-menu-btn.active .menu-icon span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.floating-menu-btn.active .menu-icon span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.landing-nav-menu{position:fixed;top:70px;left:0;right:0;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;gap:.5rem;width:100%;padding:1.5rem 1rem;transform:translateY(-100%);opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #0000004d;z-index:999;max-height:calc(100vh - 70px);overflow-y:auto}.landing-nav-menu.mobile-open{transform:translateY(0);opacity:1;pointer-events:all}.landing-nav-menu .nav-link{width:100%;padding:1rem 1.5rem;border-radius:12px;font-size:1rem;min-height:48px}.landing-nav-actions{margin-left:auto;gap:.75rem;flex-wrap:wrap}.lang-toggle{padding:.6rem 1.25rem;font-size:.875rem}.nav-login-btn{padding:.6rem 1.5rem;font-size:.875rem;min-height:40px}.hero-stats{grid-template-columns:repeat(2,1fr);gap:0;padding:0;border-top:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3)}.stat-item{border-right:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3);padding:1.5rem 1rem}.stat-item:first-child{border-left:2px solid rgba(255,255,255,.3)}.stat-item:nth-child(2){border-right:2px solid rgba(255,255,255,.3)}.stat-item:nth-child(3){border-left:2px solid rgba(255,255,255,.3);border-right:2px solid rgba(255,255,255,.3)}.stat-item:nth-child(4){border-right:2px solid rgba(255,255,255,.3);border-bottom:none}.stat-item:nth-child(2){border-bottom:2px solid rgba(255,255,255,.3)}.stat-number{font-size:clamp(2rem,7vw,3.5rem)}.stat-label{font-size:clamp(.75rem,2vw,.875rem);line-height:1.4}.hero-content{min-height:calc(100vh - 70px);padding:2rem 0}.hero-content .hero-stats{width:100vw;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%)}.hero-title{margin-bottom:2rem}.hero-actions{flex-direction:column}.landing-hero{padding:80px 1rem 2rem;min-height:100vh}.hero-content{gap:2rem}.leaders-section-container{grid-template-columns:1fr;gap:2.5rem;padding:0 1rem;margin-top:2.5rem}.leaders-text-content{padding:2rem 1.5rem;border-radius:16px}.leaders-image{border-radius:16px;border-width:2px}.leaders-captions{flex-direction:column;gap:1rem;align-items:center;margin-top:1rem;padding:0}.leader-caption{width:100%;max-width:100%;padding:1rem .875rem;border-radius:10px}.leader-caption strong{font-size:.95rem}.leader-caption span{font-size:.8125rem}.landing-platform{padding:4rem 0}.platform-background{background-position:bottom right;opacity:.4}.platform-background:after{background:linear-gradient(135deg,#0d4d4de6,#115e59cc,#0d4d4df2)}.platform-header{margin-bottom:2.5rem;padding:0 1rem;gap:1rem}.platform-content .container{padding:0 1rem}.platform-title{font-size:clamp(1.75rem,5vw,2.5rem);line-height:1.2}.platform-subtitle{text-align:center;align-self:center;font-size:clamp(1rem,3vw,1.25rem);line-height:1.4}.platform-description{font-size:clamp(.9375rem,2.5vw,1.125rem);line-height:1.6;padding:0 .5rem}.platform-features-grid{grid-template-columns:1fr;gap:1.25rem;padding:0 1rem;margin-bottom:2.5rem}.platform-feature-card{padding:1.75rem 1.5rem;border-radius:16px}.platform-feature-card h3{font-size:clamp(1.125rem,3vw,1.375rem);margin-bottom:.75rem}.platform-feature-card p{font-size:clamp(.9375rem,2.5vw,1rem);line-height:1.6}.platform-cta{margin-top:2rem;padding:0 1rem}.btn-platform-primary{width:100%;max-width:100%;padding:1rem 2rem;font-size:1rem;min-height:48px}.landing-page .contact-methods{grid-template-columns:1fr;gap:.625rem}.btn-primary,.btn-secondary{width:100%}.solutions-title{padding-top:4rem;padding-left:1rem;padding-right:1rem;font-size:clamp(1.75rem,5vw,2.5rem);line-height:1.3;margin-bottom:1rem}.solutions-subtitle{padding-left:1rem;padding-right:1rem;font-size:clamp(1.125rem,3vw,1.5rem);margin-bottom:.75rem}.solutions-description{padding-left:1rem;padding-right:1rem;padding-bottom:3rem;margin-bottom:3rem;font-size:clamp(.9375rem,2.5vw,1.125rem);line-height:1.5}.solutions-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}.solution-card{padding:2rem 1.5rem;border-radius:16px}.solution-card h3{font-size:clamp(1.125rem,3vw,1.375rem);margin-bottom:.75rem}.solution-card p{font-size:clamp(.9375rem,2.5vw,1rem);line-height:1.6}.industries-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}.landing-partners{padding:4rem 0}.partners-title{font-size:clamp(1.75rem,5vw,2.5rem);padding:0 1rem;margin-bottom:1.25rem}.partners-description{font-size:clamp(.9375rem,2.5vw,1.125rem);padding:0 1rem;margin-bottom:3rem;line-height:1.6}.partners-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;padding:0 1rem;margin-top:2rem}.partner-logo-wrapper{padding:1.75rem 1.25rem;min-height:160px;border-radius:16px}.partner-logo-img{max-height:90px}.landing-page .services-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}.landing-page .service-card{padding:2rem 1.5rem;border-radius:16px}.landing-page .service-title{font-size:clamp(1.125rem,3vw,1.375rem)}.landing-page .service-description{font-size:clamp(.9375rem,2.5vw,1rem);line-height:1.7}.form-row{grid-template-columns:1fr;gap:1rem}.contact-form-container{padding:2rem 1.5rem;border-radius:16px;margin:0 auto;position:relative;top:auto;left:auto;transform:none;width:100%;max-width:100%;box-shadow:0 12px 40px #0000001f,0 6px 20px #00000014}.landing-contact .container{min-height:auto;padding:2rem 1rem;display:flex;align-items:center;justify-content:center}.contact-form-container .section-title{font-size:clamp(1.5rem,5vw,2rem);margin-bottom:1.5rem;line-height:1.3;text-align:center}.contact-form-container .section-title:after{left:50%;transform:translate(-50%);width:60%}.contact-form{gap:1.125rem}.form-group{gap:.5rem}.form-group label{font-size:.875rem;margin-bottom:.375rem;font-weight:600}.form-group input,.form-group textarea{font-size:16px;padding:.9375rem 1rem;min-height:48px;border-radius:10px;border-width:2px}.form-group textarea{min-height:80px;height:80px;resize:vertical}.form-row{gap:1.125rem}.landing-page .form-row+.form-group{margin-top:0}.btn-primary{width:100%;padding:1.125rem 2rem;font-size:1rem;font-weight:600;min-height:52px;border-radius:12px;margin-top:.5rem}.contact-methods{margin-top:1.75rem;gap:.875rem}.contact-method{padding:1.125rem 1rem;border-radius:12px;min-height:60px;display:flex;align-items:center;justify-content:center}.method-label{font-size:.8125rem;font-weight:600}.method-value{font-size:.9375rem;font-weight:500}.footer-content{flex-direction:column;text-align:center}.footer-links{justify-content:center}}@media(max-width:480px){.floating-menu-btn{top:1rem;left:1rem;width:44px;height:44px}.floating-menu{top:1rem;left:1rem;width:calc(100vw - 2rem);border-radius:16px}.floating-menu-header{padding:.5rem 1.25rem;max-height:100px;min-height:70px}.floating-menu-brand-text{font-size:1.25rem}.floating-menu-brand-reg{font-size:.625rem}.floating-menu-content{padding:.75rem}.floating-menu-link{padding:.875rem 1rem;font-size:.9375rem}.floating-menu-footer{padding:.75rem;flex-direction:column}.floating-menu-action{width:100%}.landing-hero{padding:0;min-height:100vh}.hero-content{padding:1.5rem 0}.hero-title{font-size:clamp(1.75rem,8vw,2.5rem);padding:0 .5rem}.hero-subtitle{font-size:clamp(1.25rem,6vw,2rem);margin-top:.5rem}.hero-stats{grid-template-columns:repeat(2,1fr);gap:0;padding:0;border-top:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3)}.stat-item{border-left:2px solid rgba(255,255,255,.3);border-right:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3);padding:1.25rem .75rem}.stat-item:last-child{border-bottom:2px solid rgba(255,255,255,.3)}.stat-number{font-size:clamp(1.75rem,8vw,2.5rem)}.stat-label{font-size:clamp(.6875rem,3vw,.8125rem)}.container{padding:0 .75rem}.landing-about,.landing-solutions,.landing-partners,.landing-contact,.landing-platform{padding:3rem 0}.platform-background{background-position:bottom right;opacity:.35}.platform-content .container{padding:0 .75rem}.about-title{font-size:clamp(1.5rem,6vw,2rem);line-height:1.3;padding:0 .5rem}.leaders-section-container{gap:2rem;padding:0 .75rem;margin-top:2rem}.leaders-text-content{padding:1.75rem 1.25rem}.solutions-title{padding-top:3rem;padding-left:.75rem;padding-right:.75rem}.solutions-subtitle,.solutions-description{padding-left:.75rem;padding-right:.75rem}.solutions-grid{padding:0 .75rem;gap:1.25rem}.platform-features-grid{padding:0 .75rem;gap:1rem}.partners-grid{grid-template-columns:repeat(2,1fr);gap:1rem;padding:0 .75rem}.partner-logo-wrapper{padding:1.5rem 1rem;min-height:120px}.partner-logo-wrapper:last-child{grid-column:1 / -1;max-width:50%;margin:0 auto}.partner-logo-img{max-height:75px}.partners-title{padding:0 .75rem;font-size:clamp(1.5rem,6vw,2rem)}.partners-description{padding:0 .75rem;font-size:clamp(.875rem,3vw,1rem);margin-bottom:2.5rem}.landing-page .services-grid{padding:0 .75rem;gap:1.25rem}.landing-page .service-card{padding:1.75rem 1.25rem}.about-two-columns{padding:0 .75rem;gap:1.75rem}.about-column{padding:1.75rem 1.25rem;border-radius:14px}.landing-page .column-title{font-size:clamp(1.375rem,6vw,1.75rem);margin-bottom:1.25rem}.landing-page .column-paragraph{font-size:clamp(.875rem,3vw,.9375rem);line-height:1.75;margin-bottom:.875rem}.landing-page .column-paragraph:first-of-type{font-size:clamp(.9375rem,3.2vw,1rem)}.landing-page .column-paragraph.column-highlight{font-size:clamp(1rem,3.5vw,1.125rem);margin-top:1rem;margin-bottom:.5rem}.contact-form-container{padding:1.75rem 1.25rem;border-radius:14px}.contact-form-container .section-title{font-size:clamp(1.375rem,6vw,1.75rem);margin-bottom:1.25rem}.contact-form{gap:1rem}.form-group input,.form-group textarea{padding:.875rem .9375rem;min-height:48px}.form-group textarea{min-height:70px;height:70px}.form-row{gap:1rem}.btn-primary{padding:1rem 1.75rem;min-height:50px;font-size:.9375rem}.contact-methods{margin-top:1.5rem;gap:.75rem}.contact-method{padding:1rem .875rem;min-height:56px}.landing-page .footer-column{margin-bottom:2rem}.landing-page .footer-title{font-size:1.125rem;margin-bottom:1rem}.landing-page .footer-links{gap:.625rem}.landing-page .footer-links button{font-size:.9375rem;padding:.5rem 0;min-height:44px}.about-two-columns{flex-direction:column;gap:2rem;padding:0 1rem;margin-bottom:2.5rem}.about-column{padding:2rem 1.5rem;border-radius:16px;box-shadow:0 8px 24px #0000001f,0 4px 12px #00000014}.about-column:hover{transform:none}.landing-page .column-title{font-size:clamp(1.5rem,5vw,1.875rem);margin-bottom:1.5rem;line-height:1.3}.landing-page .column-paragraph{font-size:clamp(.9375rem,2.5vw,1rem);line-height:1.7;margin-bottom:1rem}.landing-page .column-paragraph:first-of-type{font-weight:600;font-size:clamp(1rem,2.8vw,1.0625rem)}.landing-page .column-paragraph.column-highlight{font-size:clamp(1.0625rem,3vw,1.25rem);margin-top:1.25rem;margin-bottom:.625rem;line-height:1.4}}@media(max-width:768px){.nav-link,.lang-toggle,.mobile-menu-toggle{-webkit-tap-highlight-color:rgba(255,255,255,.2);-webkit-user-select:none;user-select:none}html{scroll-behavior:smooth}body,.landing-page{overflow-x:hidden}}.landing-about,.landing-solutions,.landing-platform,.landing-partners,.landing-contact,.landing-footer{opacity:0;transform:translateY(35px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1)}.landing-about.section-visible,.landing-solutions.section-visible,.landing-platform.section-visible,.landing-partners.section-visible,.landing-contact.section-visible,.landing-footer.section-visible{opacity:1;transform:translateY(0)}.section-visible .service-card,.section-visible .platform-feature-card,.section-visible .partner-logo-wrapper{animation:fadeSlideUp .6s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.section-visible .service-card:nth-child(1),.section-visible .platform-feature-card:nth-child(1),.section-visible .partner-logo-wrapper:nth-child(1){animation-delay:.1s}.section-visible .service-card:nth-child(2),.section-visible .platform-feature-card:nth-child(2),.section-visible .partner-logo-wrapper:nth-child(2){animation-delay:.2s}.section-visible .service-card:nth-child(3),.section-visible .platform-feature-card:nth-child(3),.section-visible .partner-logo-wrapper:nth-child(3){animation-delay:.3s}.section-visible .service-card:nth-child(4),.section-visible .platform-feature-card:nth-child(4),.section-visible .partner-logo-wrapper:nth-child(4){animation-delay:.4s}.section-visible .service-card:nth-child(5),.section-visible .platform-feature-card:nth-child(5),.section-visible .partner-logo-wrapper:nth-child(5){animation-delay:.5s}.section-visible .service-card:nth-child(n+6),.section-visible .platform-feature-card:nth-child(n+6){animation-delay:.6s}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.landing-about,.landing-solutions,.landing-platform,.landing-partners,.landing-contact,.landing-footer{opacity:1;transform:none;transition:none}.section-visible .service-card,.section-visible .platform-feature-card,.section-visible .partner-logo-wrapper{animation:none;opacity:1}}@media(max-width:768px){.landing-page .footer-main{grid-template-columns:1fr;gap:2.5rem;text-align:center}.landing-page .footer-center{order:-1}.landing-page .footer-contact{text-align:center}.landing-page .footer-contact-info{align-items:center}.landing-page .footer-logo{max-width:180px}.landing-page .footer-links{align-items:center}.landing-page .footer-links button{min-height:44px;display:flex;align-items:center;justify-content:center}.landing-footer{padding:3rem 0 1.5rem}.hero-center-content{padding:5rem 1rem 1.5rem;gap:1.25rem}.hero-description{font-size:clamp(.9375rem,3vw,1.125rem);padding:0 .5rem;line-height:1.6}.hero-actions{gap:.75rem;width:100%;padding:0 1rem}.btn-hero-primary,.btn-hero-secondary{padding:.875rem 2rem;font-size:.9375rem;flex:1;min-width:140px;text-align:center;justify-content:center}}@media(max-width:480px){.landing-page .footer-main{gap:2rem}.landing-page .footer-title{margin-bottom:.75rem}.landing-page .footer-logo{max-width:150px}.landing-page .footer-bottom{padding-top:1.5rem;font-size:.8125rem}.hero-center-content{padding:4rem .5rem 1rem;gap:1rem}.hero-description{font-size:clamp(.875rem,3.5vw,1rem);padding:0}.hero-actions{flex-direction:column;align-items:stretch;padding:0 .5rem}.btn-hero-primary,.btn-hero-secondary{width:100%;padding:1rem 1.5rem;font-size:1rem;min-height:50px}.hero-stats{grid-template-columns:repeat(2,1fr)}}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;pointer-events:none;display:flex;flex-direction:column;gap:12px;max-width:420px}.toast{pointer-events:auto;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f,0 2px 6px #00000014;overflow:hidden;position:relative;animation:toast-enter .3s ease-out;transform-origin:top right;border-left:4px solid}.toast--exiting{animation:toast-exit .3s ease-in forwards}@keyframes toast-enter{0%{transform:translate(100%) scale(.95);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes toast-exit{to{transform:translate(100%) scale(.95);opacity:0}}.toast--success{border-left-color:#22c55e}.toast--error{border-left-color:#ef4444}.toast--warning{border-left-color:#f59e0b}.toast--info{border-left-color:#3b82f6}.toast__content{padding:16px;display:flex;align-items:flex-start;gap:12px;min-height:60px}.toast__icon{font-size:1.25rem;flex-shrink:0;margin-top:2px}.toast__body{flex:1;min-width:0}.toast__title{font-weight:600;color:#1f2937;font-size:.95rem;line-height:1.4;margin-bottom:4px}.toast__message{color:#6b7280;font-size:.875rem;line-height:1.4}.toast__actions{display:flex;gap:8px;margin-top:12px;align-items:center}.toast__action-button{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:.8rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.toast__action-button:hover{background:#e5e7eb;border-color:#9ca3af}.toast--error .toast__action-button{background:#fef2f2;border-color:#fecaca;color:#dc2626}.toast--error .toast__action-button:hover{background:#fee2e2;border-color:#f87171}.toast__close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:1.25rem;color:#9ca3af;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease}.toast__close:hover{background:#f3f4f6;color:#6b7280}.toast__progress{position:absolute;bottom:0;left:0;height:3px;background:currentColor;opacity:.3;animation:toast-progress linear;transform-origin:left}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast--success .toast__progress{background:#22c55e}.toast--error .toast__progress{background:#ef4444}.toast--warning .toast__progress{background:#f59e0b}.toast--info .toast__progress{background:#3b82f6}@media(max-width:640px){.toast-container{left:20px;right:20px;top:20px;max-width:none}.toast{margin:0}.toast__content{padding:14px}.toast__title{font-size:.9rem}.toast__message{font-size:.8rem}.toast__action-button{font-size:.75rem;padding:5px 10px}}@media(prefers-color-scheme:dark){.toast{background:#1f2937;border-left-width:3px}.toast__title{color:#f9fafb}.toast__message{color:#d1d5db}.toast__close{color:#6b7280}.toast__close:hover{background:#374151;color:#9ca3af}.toast__action-button{background:#374151;border-color:#4b5563;color:#e5e7eb}.toast__action-button:hover{background:#4b5563;border-color:#6b7280}.toast--error .toast__action-button{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}.toast--error .toast__action-button:hover{background:#7f1d1d;border-color:#991b1b}}@media(prefers-contrast:high){.toast{border:2px solid currentColor;box-shadow:none}.toast__action-button{border-width:2px;font-weight:600}}@media(prefers-reduced-motion:reduce){.toast,.toast--exiting,.toast__progress{animation:none}.toast__action-button,.toast__close{transition:none}}@font-face{font-family:Chillax;src:url(/assets/Chillax-Regular-C8SxZBJW.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Chillax;src:url(/assets/Chillax-Medium-CcPZdMte.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Chillax;src:url(/assets/Chillax-Semibold-DlKJJvMt.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}:root{--font-primary: "Neue Haas Grotesk Display Pro", "Neue Haas Grotesk Text Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;--primary-teal: #00242f;--secondary-sage: #6b7280;--accent-orange: #f25924;--accent-orange-text: #d14a1a;--theme-original-primary: #374151;--theme-original-secondary: #6b7280;--theme-original-accent: #ea580c;--theme-marinha-primary: #1e3a8a;--theme-marinha-secondary: #6b7280;--theme-marinha-accent: #dc2626;--theme-costa-primary: #0d9488;--theme-costa-secondary: #a3a3a3;--theme-costa-accent: #f59e0b;--theme-petroleo-primary: #374151;--theme-petroleo-secondary: #6b7280;--theme-petroleo-accent: #ea580c;--theme-santuario-primary: #0c4a6e;--theme-santuario-secondary: #0f766e;--theme-santuario-accent: #06b6d4;--theme-institucional-primary: #1e40af;--theme-institucional-secondary: #475569;--theme-institucional-accent: #059669;--theme-artico-primary: #0f172a;--theme-artico-secondary: #64748b;--theme-artico-accent: #0ea5e9;--theme-twilight-primary: #312e81;--theme-twilight-secondary: #6b7280;--theme-twilight-accent: #a78bfa;--theme-forest-primary: #14532d;--theme-forest-secondary: #6b7280;--theme-forest-accent: #22c55e;--theme-desert-primary: #7c2d12;--theme-desert-secondary: #a8a29e;--theme-desert-accent: #f59e0b;--theme-storm-primary: #1f2937;--theme-storm-secondary: #6b7280;--theme-storm-accent: #fbbf24;--theme-wine-primary: #7c2d12;--theme-wine-secondary: #78716c;--theme-wine-accent: #dc2626;--theme-slate-primary: #0f172a;--theme-slate-secondary: #475569;--theme-slate-accent: #06b6d4;--theme-coral-primary: #164e63;--theme-coral-secondary: #67e8f9;--theme-coral-accent: #f97316;--theme-midnight-primary: #1e3a8a;--theme-midnight-secondary: #374151;--theme-midnight-accent: #fbbf24;--theme-sage-primary: #374151;--theme-sage-secondary: #9ca3af;--theme-sage-accent: #059669;--primary-teal-light: color-mix(in srgb, var(--primary-teal) 80%, white);--primary-teal-dark: color-mix(in srgb, var(--primary-teal) 80%, black);--secondary-sage-light: color-mix(in srgb, var(--secondary-sage) 70%, white);--secondary-sage-dark: color-mix(in srgb, var(--secondary-sage) 80%, black);--accent-orange-light: color-mix(in srgb, var(--accent-orange) 70%, white);--accent-orange-dark: color-mix(in srgb, var(--accent-orange) 80%, black);--white: #ffffff;--light-gray: #f8f9fa;--medium-gray: #6c757d;--dark-gray: #343a40;--black: #000000;--success: #28a745;--warning: #ffc107;--error: #dc3545;--info: var(--primary-teal);--overlay-light: color-mix(in srgb, var(--primary-teal) 10%, transparent);--overlay-medium: color-mix(in srgb, var(--primary-teal) 30%, transparent);--overlay-dark: color-mix(in srgb, var(--primary-teal) 70%, transparent);--accent-orange-alpha-05: color-mix(in srgb, var(--accent-orange) 5%, transparent);--accent-orange-alpha-10: color-mix(in srgb, var(--accent-orange) 10%, transparent);--accent-orange-alpha-15: color-mix(in srgb, var(--accent-orange) 15%, transparent);--accent-orange-alpha-20: color-mix(in srgb, var(--accent-orange) 20%, transparent);--accent-orange-alpha-25: color-mix(in srgb, var(--accent-orange) 25%, transparent);--accent-orange-alpha-30: color-mix(in srgb, var(--accent-orange) 30%, transparent);--accent-orange-alpha-40: color-mix(in srgb, var(--accent-orange) 40%, transparent);--accent-orange-alpha-50: color-mix(in srgb, var(--accent-orange) 50%, transparent);--accent-orange-alpha-80: color-mix(in srgb, var(--accent-orange) 80%, transparent);--accent-orange-alpha-90: color-mix(in srgb, var(--accent-orange) 90%, transparent);--primary-teal-alpha-10: color-mix(in srgb, var(--primary-teal) 10%, transparent);--primary-teal-alpha-15: color-mix(in srgb, var(--primary-teal) 15%, transparent);--primary-teal-alpha-20: color-mix(in srgb, var(--primary-teal) 20%, transparent);--primary-teal-alpha-25: color-mix(in srgb, var(--primary-teal) 25%, transparent);--primary-teal-alpha-30: color-mix(in srgb, var(--primary-teal) 30%, transparent);--secondary-sage-alpha-10: color-mix(in srgb, var(--secondary-sage) 10%, transparent);--secondary-sage-alpha-15: color-mix(in srgb, var(--secondary-sage) 15%, transparent);--secondary-sage-alpha-20: color-mix(in srgb, var(--secondary-sage) 20%, transparent);--secondary-sage-alpha-25: color-mix(in srgb, var(--secondary-sage) 25%, transparent);--secondary-sage-alpha-30: color-mix(in srgb, var(--secondary-sage) 30%, transparent);--confidence-high: #1f77b4;--confidence-med: #ff7f0e;--confidence-low: #2ca02c;--windy-opacity: .85;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--space-0: 0px;--space-half: .125rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--rounded-none: 0px;--rounded-sm: .25rem;--rounded-base: .5rem;--rounded-md: .75rem;--rounded-lg: 1rem;--rounded-xl: 1.25rem;--rounded-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 2px 8px 0 rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px 0 rgba(0, 0, 0, .15);--shadow-lg: 0 8px 24px 0 rgba(0, 0, 0, .2);--shadow-xl: 0 12px 40px 0 rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .05);--duration-fast: .1s;--duration-base: .2s;--duration-slow: .3s;--duration-slower: .5s;--easing-linear: linear;--easing-in: cubic-bezier(.4, 0, 1, 1);--easing-out: cubic-bezier(0, 0, .2, 1);--easing-in-out: cubic-bezier(.4, 0, .2, 1);font-family:var(--font-primary);line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,var(--light-gray) 0%,var(--secondary-sage-light) 50%,var(--secondary-sage) 100%)}*{box-sizing:border-box}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
