:root{--genapps-primary-color: #008066;--genapps-primary-hover: #006b56;--genapps-primary-active: #005a48;--genapps-primary-light: #e6f5f1;--genapps-primary-lighter: #ccebe3;--genapps-text-primary: #111827;--genapps-text-secondary: #6b7280;--genapps-text-disabled: #9ca3af;--genapps-bg-primary: #ffffff;--genapps-bg-secondary: #f9fafb;--genapps-bg-tertiary: #f3f4f6;--genapps-border-light: #e5e7eb;--genapps-border-medium: #d1d5db;--genapps-success-color: #10b981;--genapps-success-light: #d1fae5;--genapps-warning-color: #f59e0b;--genapps-warning-light: #fef3c7;--genapps-error-color: #ef4444;--genapps-error-light: #fee2e2;--genapps-spacing-2: .5rem;--genapps-spacing-3: .75rem;--genapps-spacing-4: 1rem;--genapps-spacing-6: 1.5rem;--genapps-spacing-8: 2rem;--genapps-radius-base: .25rem;--genapps-radius-md: .375rem;--genapps-radius-lg: .5rem;--genapps-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--genapps-shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--genapps-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--genapps-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}.dashboard{min-height:100vh;display:flex;flex-direction:column;background-color:var(--genapps-bg-secondary)}.dashboard__main{flex:1;padding:var(--genapps-spacing-6);margin-top:var(--gendash-header-height);min-height:calc(100vh - var(--gendash-header-height) - 40px);height:calc(100vh - var(--gendash-header-height) - 40px);padding-bottom:calc(var(--genapps-spacing-8) + 40px)}.dashboard__container{max-width:1400px}.dashboard__content{display:flex;flex-direction:column;gap:var(--genapps-spacing-6)}.dashboard__section-title{color:var(--genapps-text-primary);margin-bottom:20px;border-bottom:2px solid var(--genapps-primary-color);padding-bottom:10px;font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:var(--genapps-spacing-3)}.dashboard__section-logo{height:24px;width:auto}.dashboard__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-bottom:2rem}@media(min-width:1600px){.dashboard__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}}@media(min-width:1400px)and (max-width:1599px){.dashboard__grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.25rem}}@media(min-width:1200px)and (max-width:1399px){.dashboard__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}}@media(min-width:992px)and (max-width:1199px){.dashboard__grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1rem}}@media(min-width:768px)and (max-width:991px){.dashboard__grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media(max-width:767px){.dashboard__grid{grid-template-columns:1fr;gap:1rem}}.dashboard__card{background-color:var(--genapps-bg-primary);border-radius:var(--genapps-radius-lg);border:1px solid var(--genapps-border-light);box-shadow:var(--genapps-shadow-base);overflow:hidden;transition:all .2s ease-in-out}.dashboard__card:hover{box-shadow:var(--genapps-shadow-md);transform:translateY(-2px)}.dashboard__card--overview{background:linear-gradient(135deg,var(--genapps-primary-color),var(--genapps-primary-hover));color:var(--genapps-bg-primary)}.dashboard__card--overview .dashboard__card-title,.dashboard__card--overview .dashboard__card-subtitle{color:var(--genapps-bg-primary)}.dashboard__card--alerts{border-left:4px solid var(--genapps-warning-color)}.dashboard__card-header{padding:var(--genapps-spacing-4) var(--genapps-spacing-6);border-bottom:1px solid var(--genapps-border-light);background-color:var(--genapps-bg-secondary)}.dashboard__card-title-wrapper{display:flex;align-items:center;gap:var(--genapps-spacing-3)}.dashboard__card-title{font-size:1.25rem;font-weight:600;color:var(--genapps-text-primary);margin:0;line-height:1.2}.dashboard__card-subtitle{font-size:.875rem;color:var(--genapps-text-secondary);margin:0;line-height:1.2}.dashboard__card-status{display:flex;align-items:center;gap:var(--genapps-spacing-3)}.dashboard__version{font-size:.75rem;color:var(--genapps-text-secondary);font-family:Consolas,Monaco,Courier New,monospace;background-color:var(--genapps-bg-tertiary);padding:2px var(--genapps-spacing-2);border-radius:var(--genapps-radius-base)}.dashboard__card-content{padding:var(--genapps-spacing-6)}.dashboard__card-description{color:var(--genapps-text-secondary);font-size:.875rem;line-height:1.4;margin-bottom:var(--genapps-spacing-4)}.dashboard__card-actions{display:flex;gap:var(--genapps-spacing-3);padding:var(--genapps-spacing-4) var(--genapps-spacing-6);border-top:1px solid var(--genapps-border-light);background-color:var(--genapps-bg-secondary);flex-wrap:wrap}.dashboard__metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--genapps-spacing-4)}.dashboard__metric{text-align:center}.dashboard__metric-value{font-size:2rem;font-weight:700;color:var(--genapps-text-primary);margin:0;line-height:1.2}.dashboard__metric--success .dashboard__metric-value{color:var(--genapps-success-color)}.dashboard__metric--error .dashboard__metric-value{color:var(--genapps-error-color)}.dashboard__metric-label{font-size:.875rem;color:var(--genapps-text-secondary);margin:var(--genapps-spacing-1) 0 0 0;line-height:1.2}.dashboard__metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--genapps-spacing-3);margin-bottom:var(--genapps-spacing-4)}.dashboard__metric-small{text-align:center;padding:var(--genapps-spacing-2);background-color:var(--genapps-bg-tertiary);border-radius:var(--genapps-radius-base)}.dashboard__metric-small-value{font-size:1.125rem;font-weight:600;color:var(--genapps-text-primary);margin:0;line-height:1.2}.dashboard__metric-small-label{font-size:.75rem;color:var(--genapps-text-secondary);margin:var(--genapps-spacing-1) 0 0 0;line-height:1.2}.gendash-progress{position:relative;width:100%;height:8px;border-radius:var(--genapps-radius-base);background-color:var(--genapps-bg-secondary);margin-top:var(--genapps-spacing-2);overflow:hidden}.gendash-progress__bar{position:absolute;top:0;left:0;height:100%;background-color:var(--genapps-primary-color);transition:width .3s ease-in-out}.gendash-progress__bar--warning{background-color:#ef4444}.dashboard__metric-small-value--unavailable,.gendash-metric-small__value--unavailable{color:var(--genapps-text-disabled)}.dashboard__status{display:flex;align-items:center;gap:var(--genapps-spacing-2);font-size:.875rem;font-weight:500;padding:var(--genapps-spacing-2) var(--genapps-spacing-3);border-radius:var(--genapps-radius-base)}.dashboard__status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.dashboard__status--online{background-color:var(--genapps-success-color);color:var(--genapps-success-color)}.dashboard__status--offline{background-color:var(--genapps-error-color);color:var(--genapps-error-color)}.dashboard__status--warning{background-color:var(--genapps-warning-color);color:var(--genapps-warning-color)}.dashboard__app-icon{width:24px;height:24px;border-radius:var(--genapps-radius-base);cursor:pointer;transition:all .3s ease;position:relative}.dashboard__app-icon:hover{transform:scale(1.1);filter:drop-shadow(0 0 8px rgba(59,130,246,.5))}.dashboard__app-icon:focus{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px}.dashboard__alert{display:flex;align-items:center;gap:var(--genapps-spacing-2);padding:var(--genapps-spacing-3);background-color:var(--genapps-warning-light);border:1px solid var(--genapps-warning-color);border-radius:var(--genapps-radius-base);margin-bottom:var(--genapps-spacing-3);font-size:.875rem;color:var(--genapps-text-primary)}.dashboard__alert-icon{font-size:1rem}.dashboard__button{display:inline-flex;align-items:center;justify-content:center;gap:var(--genapps-spacing-2);padding:var(--genapps-spacing-3) var(--genapps-spacing-4);border:none;border-radius:var(--genapps-radius-base);font-size:.875rem;font-weight:500;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none;white-space:nowrap}.dashboard__button--primary{background-color:var(--genapps-primary-color);color:var(--genapps-bg-primary);box-shadow:var(--genapps-shadow-sm)}.dashboard__button--primary:hover:not(:disabled){background-color:var(--genapps-primary-hover);transform:translateY(-1px);box-shadow:var(--genapps-shadow-md)}.dashboard__button--primary:disabled{background-color:var(--genapps-border-medium);color:var(--genapps-text-disabled);cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.dashboard__button--secondary{background-color:transparent;color:var(--genapps-text-secondary);border:1px solid var(--genapps-border-medium)}.dashboard__button--secondary:hover{background-color:var(--genapps-bg-secondary);border-color:var(--genapps-primary-color);color:var(--genapps-primary-color)}.dashboard__last-update{font-size:.75rem;color:var(--genapps-text-secondary);margin-top:var(--genapps-spacing-2);line-height:1.2}.dashboard__search-section,.dashboard__apps-section{margin-bottom:var(--genapps-spacing-6)}.dashboard__loading,.dashboard__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--genapps-spacing-8);text-align:center;grid-column:1 / -1}.dashboard__loading-icon,.dashboard__empty-icon{font-size:3rem;margin-bottom:var(--genapps-spacing-4);line-height:1}.dashboard__loading p,.dashboard__empty p{font-size:1rem;color:var(--genapps-text-secondary);margin:0}.dashboard__empty-text{color:var(--genapps-text-secondary);text-align:center;padding:var(--genapps-spacing-6)}.dashboard__alerts-list{display:flex;flex-direction:column;gap:var(--genapps-spacing-4)}.dashboard__alert-item{padding:var(--genapps-spacing-4);border-radius:var(--genapps-radius-base);border:1px solid var(--genapps-border-light)}.dashboard__alert-item--warning{background-color:var(--genapps-warning-light);border-color:var(--genapps-warning-color)}.dashboard__alert-item--error{background-color:var(--genapps-error-light);border-color:var(--genapps-error-color)}.dashboard__alert-item--info{background-color:var(--genapps-primary-light);border-color:var(--genapps-primary-color)}.dashboard__alert-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--genapps-spacing-2)}.dashboard__alert-app{font-weight:600;color:var(--genapps-text-primary)}.dashboard__alert-time{font-size:.75rem;color:var(--genapps-text-secondary)}.dashboard__alert-message{margin:0;color:var(--genapps-text-primary);line-height:1.4}@media(max-width:768px){.dashboard__main{padding:var(--genapps-spacing-4)}.dashboard__container{padding:0}.dashboard__grid{grid-template-columns:1fr;gap:var(--genapps-spacing-4)}.dashboard__metrics-grid,.dashboard__metrics{grid-template-columns:1fr}.dashboard__card-header{padding:var(--genapps-spacing-3) var(--genapps-spacing-4)}.dashboard__card-content{padding:var(--genapps-spacing-4)}.dashboard__card-actions{padding:var(--genapps-spacing-3) var(--genspacing-4)}.dashboard__section-title{font-size:1.25rem}.dashboard__section-logo{height:20px}}@media(max-width:480px){.dashboard__metrics-grid,.dashboard__metrics{grid-template-columns:1fr;gap:var(--genapps-spacing-2)}.dashboard__button{padding:var(--genapps-spacing-2) var(--genapps-spacing-3);font-size:.75rem}}@media(prefers-contrast:high){.dashboard__card{border-width:2px}.dashboard__section-title{border-bottom-width:3px}.dashboard__button{border-width:2px}}@media(prefers-reduced-motion:reduce){.dashboard__card,.dashboard__button,.dashboard__status-dot{transition:none;animation:none}}.dashboard__button:focus-visible{outline:2px solid var(--genapps-primary-color);outline-offset:2px}.dashboard__status:focus-visible{outline:2px solid var(--genapps-primary-color);outline-offset:2px}.gendash-components-health{margin-bottom:var(--genapps-spacing-4)}.gendash-components-health__title{font-size:.875rem;font-weight:600;color:var(--genapps-text-primary);margin-bottom:var(--genapps-spacing-3);display:flex;align-items:center;gap:var(--genapps-spacing-2)}.gendash-components-health__status{display:flex;gap:var(--genapps-spacing-3);flex-wrap:wrap}.gendash-components-health__dot{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;cursor:pointer;transition:all .2s ease-in-out;position:relative;border:2px solid transparent}.gendash-components-health__dot:hover{transform:scale(1.1);box-shadow:var(--genapps-shadow-md)}.gendash-components-health__dot--online{background-color:var(--genapps-success-color);border-color:var(--genapps-success-color);color:var(--genapps-bg-primary)}.gendash-components-health__dot--online:hover{background-color:#059669;border-color:#059669}.gendash-components-health__dot--warning{background-color:var(--genapps-warning-color);border-color:var(--genapps-warning-color);color:var(--genapps-bg-primary)}.gendash-components-health__dot--warning:hover{background-color:#d97706;border-color:#d97706}.gendash-components-health__dot--error{background-color:var(--genapps-error-color);border-color:var(--genapps-error-color);color:var(--genapps-bg-primary)}.gendash-components-health__dot--error:hover{background-color:#dc2626;border-color:#dc2626}.gendash-components-health__dot--unknown{background-color:var(--genapps-text-disabled);border-color:var(--genapps-text-disabled);color:var(--genapps-bg-primary)}.gendash-components-health__dot--unknown:hover{background-color:#6b7280;border-color:#6b7280}.gendash-components-health__label{font-size:.75rem;font-weight:700;text-transform:uppercase}.gendash-components-health__dot--online .gendash-components-health__label:after{content:"●";position:absolute;top:-4px;right:-4px;width:12px;height:12px;background-color:var(--genapps-success-color);border-radius:50%;border:2px solid var(--genapps-bg-primary)}.gendash-components-health__dot--warning .gendash-components-health__label:after{content:"!";position:absolute;top:-4px;right:-4px;width:12px;height:12px;background-color:var(--genapps-warning-color);border-radius:50%;border:2px solid var(--genapps-bg-primary);color:var(--genapps-bg-primary);font-size:8px;display:flex;align-items:center;justify-content:center}.gendash-components-health__dot--error .gendash-components-health__label:after{content:"✕";position:absolute;top:-4px;right:-4px;width:12px;height:12px;background-color:var(--genapps-error-color);border-radius:50%;border:2px solid var(--genapps-bg-primary);color:var(--genapps-bg-primary);font-size:8px;display:flex;align-items:center;justify-content:center}.gendash-metrics{margin-bottom:var(--genapps-spacing-4)}.gendash-metrics__title{font-size:.875rem;font-weight:600;color:var(--genapps-text-primary);margin-bottom:var(--genapps-spacing-3);display:flex;align-items:center;gap:var(--genapps-spacing-2)}.gendash-metrics__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--genapps-spacing-2)}.gendash-metrics__item{background-color:var(--genapps-bg-tertiary);border-radius:var(--genapps-radius-base);padding:var(--genapps-spacing-3);text-align:center;transition:all .2s ease-in-out}.gendash-metrics__item:hover{background-color:var(--genapps-bg-secondary);transform:translateY(-1px)}.gendash-metrics__value{display:block;font-size:1.125rem;font-weight:600;color:var(--genapps-text-primary);margin-bottom:var(--genapps-spacing-1)}.gendash-metrics__label{font-size:.75rem;color:var(--genapps-text-secondary);text-transform:uppercase;letter-spacing:.05em}.gendash-card__footer{padding:var(--genapps-spacing-4);border-top:1px solid var(--genapps-border-light);background-color:var(--genapps-bg-secondary);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--genapps-spacing-3)}.gendash-card__footer-info{display:flex;gap:var(--genapps-spacing-3);align-items:center}.gendash-card__version{font-size:.75rem;font-weight:600;color:var(--genapps-text-primary);background-color:var(--genapps-bg-tertiary);padding:4px var(--genapps-spacing-2);border-radius:var(--genapps-radius-base);font-family:Consolas,Monaco,Courier New,monospace}.gendash-card__port{font-size:.75rem;color:var(--genapps-text-secondary);background-color:var(--genapps-primary-lighter);padding:4px var(--genapps-spacing-2);border-radius:var(--genapps-radius-base);font-family:Consolas,Monaco,Courier New,monospace}.gendash-card__footer-actions{display:flex;gap:var(--genapps-spacing-2)}.gendash-card__footer-actions .dashboard__button{padding:var(--genapps-spacing-2) var(--genapps-spacing-3);font-size:.75rem}.gendash-card{background-color:var(--genapps-bg-primary);border:1px solid var(--genapps-border-light);border-radius:var(--genapps-radius-lg);box-shadow:var(--genapps-shadow-base);transition:all .3s ease;position:relative;overflow:hidden}.gendash-card:hover{box-shadow:var(--genapps-shadow-md);transform:translateY(-2px);border-color:var(--genapps-primary-color)}.gendash-modal{position:relative;z-index:9999;display:flex;align-items:center;justify-content:center}.gendash-modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;cursor:pointer}.gendash-modal__content{position:relative;background-color:var(--genapps-bg-primary);border-radius:var(--genapps-radius-lg);box-shadow:var(--genapps-shadow-lg);max-width:800px;max-height:80vh;width:90%;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.gendash-modal__header{padding:var(--genapps-spacing-4) var(--genapps-spacing-6);border-bottom:1px solid var(--genapps-border-light);background-color:var(--genapps-bg-secondary);display:flex;justify-content:space-between;align-items:center}.gendash-modal__title{font-size:1.125rem;font-weight:600;color:var(--genapps-text-primary);margin:0}.gendash-modal__close{background:none;border:none;font-size:1.25rem;color:var(--genapps-text-secondary);cursor:pointer;padding:var(--genapps-spacing-2);border-radius:var(--genapps-radius-base);transition:all .2s ease-in-out;line-height:1}.gendash-modal__close:hover{background-color:var(--genapps-bg-tertiary);color:var(--genapps-text-primary)}.gendash-modal__body{flex:1;padding:var(--genapps-spacing-4) var(--genapps-spacing-6);overflow-y:auto;max-height:400px}.gendash-modal__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--genapps-spacing-8);text-align:center}.gendash-modal__loading-icon{font-size:2rem;margin-bottom:var(--genapps-spacing-4);animation:spin 1s linear infinite}.gendash-modal__loading p{color:var(--genapps-text-secondary);margin:0}.gendash-modal__logs{display:flex;flex-direction:column;gap:var(--genapps-spacing-2)}.gendash-modal__log-entry{padding:var(--genapps-spacing-3);border-radius:var(--genapps-radius-base);border:1px solid var(--genapps-border-light);background-color:var(--genapps-bg-tertiary);display:flex;flex-direction:column;gap:var(--genapps-spacing-1);font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.4}.gendash-modal__log-entry--info{background-color:var(--genapps-primary-light);border-color:var(--genapps-primary-color)}.gendash-modal__log-entry--warning{background-color:var(--genapps-warning-light);border-color:var(--genapps-warning-color)}.gendash-modal__log-entry--error{background-color:var(--genapps-error-light);border-color:var(--genapps-error-color)}.gendash-modal__log-entry--debug{background-color:var(--genapps-bg-tertiary);border-color:var(--genapps-border-medium)}.gendash-modal__log-timestamp{font-size:.75rem;color:var(--genapps-text-secondary);font-weight:600}.gendash-modal__log-level{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-right:var(--genapps-spacing-2)}.gendash-modal__log-entry--info .gendash-modal__log-level{color:var(--genapps-primary-color)}.gendash-modal__log-entry--warning .gendash-modal__log-level{color:var(--genapps-warning-color)}.gendash-modal__log-entry--error .gendash-modal__log-level{color:var(--genapps-error-color)}.gendash-modal__log-entry--debug .gendash-modal__log-level{color:var(--genapps-text-secondary)}.gendash-modal__log-message{color:var(--genapps-text-primary);word-break:break-word}.gendash-modal__empty{text-align:center;color:var(--genapps-text-secondary);padding:var(--genapps-spacing-6);margin:0}.gendash-modal__footer{padding:var(--genapps-spacing-4) var(--genapps-spacing-6);border-top:1px solid var(--genapps-border-light);background-color:var(--genapps-bg-secondary);display:flex;justify-content:flex-end}.gendash-component-health{display:flex;align-items:center;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500;margin:0 2px;cursor:pointer;transition:all .2s ease;border:1px solid}.gendash-component-health--online{background-color:#d4edda;color:#155724;border-color:#c3e6cb}.gendash-component-health--online:hover{background-color:#c3e6cb;transform:translateY(-1px);box-shadow:0 2px 4px #0080001a}.gendash-component-health--warning{background-color:#fff3cd;color:#856404;border-color:#ffeaa7}.gendash-component-health--warning:hover{background-color:#ffeaa7;transform:translateY(-1px);box-shadow:0 2px 4px #ff98001a}.gendash-component-health--offline{background-color:#f8d7da;color:#721c24;border-color:#f5c6cb}.gendash-component-health--offline:hover{background-color:#f5c6cb;transform:translateY(-1px);box-shadow:0 2px 4px #dc35451a}.gendash-component-health--unknown{background-color:#e2e3e5;color:#383d41;border-color:#d6d8db}.gendash-component-health--unknown:hover{background-color:#d6d8db;transform:translateY(-1px);box-shadow:0 2px 4px #6c757d1a}.gendash-component-health--disabled{background-color:#f8f9fa;color:#6c757d;border-color:#dee2e6;cursor:not-allowed;opacity:.6}.gendash-component-health--disabled:hover{transform:none;box-shadow:none}.gendash-component-health i{margin-right:4px;font-size:10px}.gendash-component-health span{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.gendash-metric--refresh{min-height:120px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.gendash-metric__content{display:flex;flex-direction:column;width:100%;flex:1;justify-content:center}.gendash-refresh-container{width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.gendash-refresh-info{display:flex;flex-direction:column;align-items:center;gap:6px}.gendash-refresh-time{font-size:24px;font-weight:700;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:var(--genapps-text-primary);letter-spacing:.5px;transition:color .3s ease;text-shadow:0 1px 2px rgba(0,0,0,.1)}.gendash-refresh-label{font-size:10px;font-weight:500;color:var(--genapps-text-secondary);text-transform:uppercase;letter-spacing:.8px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.gendash-refresh-progress{width:100%;height:6px;background-color:#e9ecef;border-radius:8px;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px #0000001a;margin-top:12px;margin-bottom:8px}.gendash-refresh-bar{height:100%;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;background:linear-gradient(90deg,var(--genapps-primary-color) 0%,var(--genapps-primary-hover) 100%);box-shadow:0 2px 4px #0000001a}.gendash-refresh-bar:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 2s infinite;border-radius:8px}@keyframes shimmer{0%{left:-100%}to{left:100%}}.gendash-refresh-container.urgent .gendash-refresh-time{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.gendash-refresh-bar--safe{background:linear-gradient(90deg,#008066,#006b56);box-shadow:0 2px 4px #0080664d}.gendash-refresh-bar--medium{background:linear-gradient(90deg,#ff6b35,#e55a2b);box-shadow:0 2px 4px #ff6b354d}.gendash-refresh-bar--urgent{background:linear-gradient(90deg,#dc3545,#c82333);box-shadow:0 2px 4px #dc35454d;animation:urgentGlow 1s ease-in-out infinite alternate}@keyframes urgentGlow{0%{box-shadow:0 2px 4px #dc35454d}to{box-shadow:0 2px 8px #dc354599}}.gendash-card--refreshing{position:relative;opacity:.95;transition:opacity .3s ease}.gendash-card--refreshing:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(0,128,102,.03),transparent);animation:cardShimmer 1.5s ease-in-out;border-radius:inherit;pointer-events:none}@keyframes cardShimmer{0%{transform:translate(-100%);opacity:0}50%{opacity:1}to{transform:translate(100%);opacity:0}}.gendash-card__header-right{display:flex;align-items:center;gap:8px}.gendash-manual-refresh{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:50%;background-color:var(--genapps-bg-secondary);color:var(--genapps-primary-color);cursor:pointer;transition:all .3s ease;margin-top:4px;font-size:12px}.gendash-manual-refresh:hover:not(.disabled){background-color:var(--genapps-primary-color);color:#fff;transform:scale(1.1);box-shadow:0 2px 8px #0080664d}.gendash-manual-refresh:active:not(.disabled){transform:scale(.95)}.gendash-manual-refresh.disabled{opacity:.6;cursor:not-allowed;background-color:var(--genapps-bg-tertiary);color:var(--genapps-text-disabled)}.gendash-manual-refresh i{transition:transform .3s ease}.gendash-manual-refresh.disabled i{animation:disabledSpin 1s linear infinite}@keyframes disabledSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gendash-refresh-indicator{display:flex;align-items:center;justify-content:center;width:20px;height:20px;opacity:.8}.gendash-refresh-spinner{width:12px;height:12px;border:2px solid #e9ecef;border-top:2px solid var(--genapps-primary-color);border-radius:50%;animation:cardRefreshSpin 1s linear infinite}@keyframes cardRefreshSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gendash-card--refreshing .gendash-card__info{position:relative}.gendash-card--refreshing .gendash-card__info:after{content:"";position:absolute;top:0;right:0;width:6px;height:6px;background-color:var(--genapps-primary-color);border-radius:50%;animation:dataUpdatePulse 2s ease-in-out}@keyframes dataUpdatePulse{0%,to{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}.gendash-stats.refreshing{animation:statsPulse .5s ease-in-out}@keyframes statsPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.gendash-dashboard--refreshing:before{content:"";position:fixed;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--genapps-primary-color),transparent);animation:topShimmer 2s ease-in-out;z-index:9999;pointer-events:none}@keyframes topShimmer{0%{transform:translate(-100%);opacity:0}50%{opacity:.8}to{transform:translate(100%);opacity:0}}@media(max-width:768px){.gendash-refresh-time{font-size:24px}.gendash-refresh-progress{height:6px}.gendash-refresh-label{font-size:10px}.gendash-refresh-indicator{width:14px;height:14px}.gendash-refresh-spinner{width:8px;height:8px;border-width:1.5px}.gendash-manual-refresh{width:20px;height:20px;font-size:11px;margin-top:3px}}@media(max-width:480px){.gendash-refresh-time{font-size:18px}.gendash-refresh-container,.gendash-card__header-right{gap:6px}.gendash-refresh-indicator{width:12px;height:12px}.gendash-refresh-spinner{width:6px;height:6px;border-width:1px}.gendash-manual-refresh{width:18px;height:18px;font-size:10px;margin-top:2px}}.gendash-metric--weather{min-height:25.625rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.weather-iframe,.weather-widget-iframe{width:100%;height:5rem;border:none;border-radius:.5rem;background:transparent}.weather-widget{width:100%;padding:8px;display:flex;flex-direction:column;justify-content:center;min-height:80px}.weather-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.weather-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px}.weather-icon img{width:36px;height:36px;object-fit:contain}.weather-loading{font-size:24px;display:flex;align-items:center;justify-content:center;width:100%;height:40px}.weather-info{flex:1;text-align:center}.weather-temp{font-size:18px;font-weight:600;color:var(--genapps-text-color, #333);line-height:1.2}.weather-desc{font-size:11px;color:var(--genapps-text-secondary, #666);text-transform:lowercase;margin-top:2px}.weather-details{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.weather-detail{display:flex;flex-direction:column;align-items:center;flex:1}.weather-detail-label{font-size:9px;color:var(--genapps-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;line-height:1}.weather-detail-value{font-size:11px;font-weight:500;color:var(--genapps-text-color, #333);margin-top:2px}#landscape-weather{width:100%;display:flex;justify-content:center;align-items:center;min-height:5rem}#landscape-weather .weatherwidget-io{background:transparent!important;border:none!important;padding:0!important;margin:0!important;text-align:center!important;vertical-align:middle!important}#landscape-weather .weather-main,#landscape-weather .weather-info{background:transparent!important;border:none!important;padding:0!important;margin:0!important}.weather-loading{display:flex;justify-content:center;align-items:center;min-height:5rem;width:100%}.weather-spinner{width:24px;height:24px;border:2px solid var(--genapps-border-light);border-top:2px solid var(--genapps-primary-color, #008066);border-radius:50%;animation:weatherSpin 1s linear infinite}@keyframes weatherSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.weather-error{color:var(--genapps-danger-color, #dc3545);font-size:12px;font-weight:500;text-align:center;padding:20px;border-radius:6px;background-color:var(--genapps-danger-light, #f8d7da);border:1px solid var(--genapps-danger-border, #f5c6cb)}@media(max-width:768px){.gendash-metric--weather{min-height:25.625rem}#landscape-weather,.weather-loading{min-height:3.75rem}.weather-spinner{width:1.25rem;height:1.25rem;border-width:.09375rem}}@media(max-width:480px){.gendash-metric--weather{min-height:25.625rem}.weather-error{font-size:.625rem;padding:.9375rem}}.toner-levels-container{width:19.875rem;display:flex;align-items:center;gap:.5rem}.toner-color-indicator{width:1.25rem;height:1.25rem;border-radius:.25rem}.toner-color-name{width:5rem;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toner-color-level{width:1.875rem;text-align:right;font-family:Consolas,Courier New,monospace}.toner-spacer{flex:0 0 7.375rem}.toner-code{width:3.75rem;text-align:right;font-size:.75rem;color:var(--genapps-text-secondary)}.gendash-flipcard-wrapper{perspective:1000px;position:relative;width:100%;min-height:380px}.gendash-flipcard-face{width:100%;height:100%;backface-visibility:hidden;transition:transform .8s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0}.gendash-flipcard-face--front{transform:rotateY(0);z-index:2}.gendash-flipcard-face--back{transform:rotateY(180deg);z-index:1}.gendash-flipcard--flipped .gendash-flipcard-face--front{transform:rotateY(-180deg);z-index:1}.gendash-flipcard--flipped .gendash-flipcard-face--back{transform:rotateY(0);z-index:2}.gendash-flipcard-trigger{cursor:pointer!important;transition:transform .2s ease}.gendash-flipcard-trigger:hover{transform:scale(1.1)}.gendash-flipcard-trigger:active{transform:scale(.95)}.gendash-card__graphics{padding:1.5rem;min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center}.gendash-graphs__loading{display:flex;flex-direction:column;align-items:center;gap:1rem}.gendash-graphs__loading-spinner{width:40px;height:40px;border:4px solid rgba(0,128,102,.1);border-top-color:#008066;border-radius:50%;animation:spin 1s linear infinite}.gendash-graphs__no-data{text-align:center;padding:2rem}.gendash-graphs__no-data-icon{font-size:3rem;margin-bottom:1rem}.gendash-graphs__no-data h3{color:var(--genapps-text-primary);margin-bottom:.5rem}.gendash-graphs__no-data p{color:var(--genapps-text-secondary);font-size:.875rem}@keyframes spin{to{transform:rotate(360deg)}}.gendash-logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--genapps-spacing-3);padding-bottom:var(--genapps-spacing-3);border-bottom:1px solid var(--genapps-border-light)}.gendash-logs-controls{display:flex;align-items:center;gap:var(--genapps-spacing-2)}.gendash-logs-auto-refresh{display:flex;align-items:center;gap:var(--genapps-spacing-1);font-size:.75rem;color:var(--genapps-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.gendash-logs-auto-refresh input[type=checkbox]{cursor:pointer;accent-color:var(--genapps-primary-color)}.gendash-logs-filters{display:flex;gap:var(--genapps-spacing-2);margin-bottom:var(--genapps-spacing-3);flex-wrap:wrap}.gendash-logs-filter{padding:6px 12px;border:1px solid var(--genapps-border-light);border-radius:var(--genapps-radius-base);background-color:var(--genapps-bg-tertiary);color:var(--genapps-text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease-in-out;text-transform:uppercase;letter-spacing:.05em}.gendash-logs-filter:hover{background-color:var(--genapps-bg-secondary);border-color:var(--genapps-border-medium)}.gendash-logs-filter--active{background-color:var(--genapps-primary-color);color:#fff;border-color:var(--genapps-primary-color)}.gendash-logs-filter--error.gendash-logs-filter--active{background-color:var(--genapps-error-color);border-color:var(--genapps-error-color)}.gendash-logs-filter--warn.gendash-logs-filter--active{background-color:var(--genapps-warning-color);border-color:var(--genapps-warning-color)}.gendash-logs-filter--info.gendash-logs-filter--active{background-color:var(--genapps-primary-color);border-color:var(--genapps-primary-color)}:root{--primary-color: #008066;--border-color: #e2e8f0;--text-color: #2d3748;--text-muted: #718096;--bg-color: #ffffff;--gendash-header-height: 120px}.header-container{display:flex;justify-content:space-between;align-items:center;height:100px;padding:0 20px;background-color:var(--bg-color);color:var(--primary-color);border-bottom:1px solid var(--border-color);flex-shrink:0}.header-container.gendash-header{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--gendash-header-height);border-bottom:2px solid var(--border-color);background-color:var(--bg-color)}.Generis-logo img{height:100%;max-height:75px}.Generis-logo{display:flex;align-items:center}.Generis-logo:hover{filter:drop-shadow(0 0 2rem var(--primary-color))}.header-title h1{margin:0;font-size:1.8rem;font-weight:700;color:var(--primary-color)}.header-user{display:flex;align-items:center;margin-right:20px}.header-user-container{display:flex;flex-direction:column;align-items:center;gap:8px}.header-user-avatar{display:flex;justify-content:center}.header-user-avatar img{width:50px;height:50px;aspect-ratio:1/1;border-radius:50%;object-fit:cover;border:2px solid var(--primary-color)}.header-user-info{display:flex;flex-direction:column;align-items:center;text-align:center}.header-user-name{font-size:.8rem;font-weight:500;color:var(--primary-color);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.header-user-loading{font-size:.8rem;color:var(--text-muted, #6c757d);font-style:italic}.header-user-initials{width:50px;height:50px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;border:2px solid var(--primary-color)}.header-user-photo{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid var(--primary-color)}.header-title{display:flex;flex-direction:column;align-items:flex-start}.header-subtitle{font-size:.75rem;color:#718096;font-weight:400;margin-top:2px;margin-bottom:0}.header-version{font-size:.65rem;color:#aeaeae;font-weight:600;text-align:left;margin-top:0}.header-user{position:relative}.header-user-container{position:relative;display:flex;align-items:center;gap:12px}.header-user-button{display:flex;align-items:center;gap:12px;background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:12px;transition:all .2s ease;color:inherit}.header-user-button:hover{background:#667eea1a;transform:translateY(-1px)}.header-user-button:active{transform:translateY(0)}.header-user-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-user-photo{width:100%;height:100%;object-fit:cover}.header-user-initials{width:100%;height:100%;background:linear-gradient(135deg,#3db932,#008066);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.header-user-info{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.header-user-name{font-size:.875rem;font-weight:600;color:#2d3748;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.header-user-department{font-size:.75rem;color:#718096;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.header-user-arrow{display:flex;align-items:center;transition:transform .2s ease;color:#718096}.header-user-arrow.rotated{transform:rotate(180deg)}.header-user-loading{display:flex;align-items:center;gap:8px;padding:8px 12px;color:#718096;font-size:.875rem}.loading-spinner-small{width:16px;height:16px;border:2px solid rgba(102,126,234,.2);border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.header-user-guest{display:flex;align-items:center}.header-login-button{padding:8px 16px;background:linear-gradient(135deg,#3db932,#008066);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.header-login-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.header-user-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a,0 0 0 1px #0000000d;border:1px solid #e2e8f0;min-width:280px;z-index:1000;animation:menuSlideIn .2s ease-out;overflow:hidden}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-menu-header{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#3db932,#008066);color:#fff}.user-menu-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid rgba(255,255,255,.2)}.user-menu-avatar img{width:100%;height:100%;object-fit:cover}.user-menu-initials{width:100%;height:100%;background:#fff3;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem}.user-menu-info{flex:1;min-width:0}.user-menu-name{font-size:1rem;font-weight:600;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-title{font-size:.875rem;opacity:.9;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-department{font-size:.75rem;opacity:.8;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:500;background:#fff3;border:1px solid rgba(255,255,255,.3)}.badge-admin{background:#f5656533;border-color:#f565654d;color:#fff}.user-menu-divider{height:1px;background:#e2e8f0;margin:0}.user-menu-items{padding:8px 0}.user-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;transition:all .2s ease;color:#4a5568;font-size:.875rem}.user-menu-item:hover{background:#f7fafc;color:#2d3748}.user-menu-item:active{background:#edf2f7}.menu-item-icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}.logout-item{color:#e53e3e}.logout-item:hover{background:#f565651a;color:#c53030}.header__mobile-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;border:none;background:transparent;cursor:pointer;padding:0}.header__hamburger{display:flex;flex-direction:column;justify-content:space-between;width:20px;height:14px}.header__hamburger span{display:block;height:2px;width:100%;background-color:var(--text-color);border-radius:1px;transition:all .2s ease}.header__hamburger--active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.header__hamburger--active span:nth-child(2){opacity:0}.header__hamburger--active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.header__mobile{position:absolute;top:100%;left:0;right:0;background:var(--bg-color);border-bottom:1px solid var(--border-color);box-shadow:0 4px 6px #0000001a;z-index:99}.header__mobile-tabs{display:flex;flex-direction:column;list-style:none;margin:0;padding:16px;gap:8px}.header__mobile-button{display:flex;align-items:center;gap:12px;padding:12px 16px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.header__mobile-button:hover{background:#0080661a;color:var(--primary-color)}.header__mobile-button--active{background:var(--primary-color);color:#fff}.header__mobile-icon{font-size:1.2rem;width:24px;text-align:center;flex-shrink:0}.header__mobile-label{font-weight:500}.header__mobile-user{padding:16px;border-top:1px solid var(--border-color)}.header__mobile-user-info{display:flex;align-items:center;gap:12px}.header__mobile-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0}.header__mobile-avatar .header-user-photo,.header__mobile-avatar .header-user-initials{width:100%;height:100%}.header__mobile-details{flex:1;min-width:0}.header__mobile-username{display:block;font-size:.875rem;font-weight:600;color:var(--text-color);margin-bottom:2px}.header__mobile-time{display:block;font-size:.75rem;color:var(--text-muted)}.header__mobile-logout{margin-left:auto;padding:8px 16px;border:none;border-radius:8px;background:#f56565;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.header__mobile-logout:hover{background:#e53e3e}@media(max-width:768px){.header-container.gendash-header{height:var(--gendash-header-height)}:root{--gendash-header-height: 80px}.header-container{padding:0 15px}.header-title h1{font-size:1.5rem}.header-subtitle,.header-user-info{display:none}.header-user-menu{min-width:260px;right:-10px}.user-menu-header{padding:12px}.user-menu-avatar{width:40px;height:40px}.header__mobile-toggle{display:flex}}@media(max-width:480px){.header-container.gendash-header{height:var(--gendash-header-height)}:root{--gendash-header-height: 70px}.header-container{padding:0 10px}.header-logo img{max-height:50px}.header-title h1{font-size:1.25rem}.header-user-menu{min-width:240px;right:-15px}}@media(prefers-color-scheme:dark){.header-container{background-color:#fff;border-bottom-color:#2d3748}.header-title h1{color:#008066}.header-subtitle{color:#a0aec0}.header-user-name{color:#008066}.header-user-department{color:#a0aec0}.header-user-button:hover{background:#667eea33}.header-user-menu{background:#2d3748;border-color:#4a5568;box-shadow:0 10px 25px #0000004d,0 0 0 1px #ffffff1a}.user-menu-divider{background:#4a5568}.user-menu-item{color:#008066}.user-menu-item:hover{background:#4a5568;color:#f7fafc}.user-menu-item:active{background:#718096}}@media(prefers-reduced-motion:reduce){.header-user-menu{animation:none}.header-user-arrow{transition:none}.loading-spinner-small{animation:none}.loading-spinner-small:after{content:"⏳";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}.profile-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.profile-modal{background:#fff;border-radius:12px;width:92%;max-width:640px;box-shadow:0 20px 40px #0003;animation:modalFadeIn .18s ease-out;display:flex;flex-direction:column;outline:none}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.profile-modal__header{padding:16px 20px;border-bottom:1px solid #e2e8f0}.profile-modal__content{padding:16px 20px}.profile-modal__fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.profile-modal__label{font-size:.75rem;color:#6b7280}.profile-modal__value{font-size:.95rem;color:#111827;font-weight:600}.profile-modal__footer{padding:16px 20px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end}.profile-modal__loading,.profile-modal__error{display:flex;align-items:center;gap:8px}.profile-modal__error{color:#ef4444}.profile-modal__photo{display:flex;justify-content:center;margin-bottom:20px}.profile-modal__photo img{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--primary-color)}.user-menu-photo{width:100%;height:100%;object-fit:cover}.settings-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.settings-modal{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.settings-modal__header{padding:16px 20px;border-bottom:1px solid var(--border-color)}.settings-modal__header h3{margin:0;font-size:1.25rem;color:var(--primary-color)}.settings-modal__content{padding:20px}.settings-modal__section{margin-bottom:20px}.settings-modal__section-title{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-color)}.settings-modal__theme-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-modal__theme-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;border:2px solid var(--border-color);border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease}.settings-modal__theme-option:hover{border-color:var(--primary-color);background:var(--primary-color)}.settings-modal__theme-option:hover .theme-option-icon,.settings-modal__theme-option:hover span{color:#fff}.settings-modal__theme-option.active{border-color:var(--primary-color);background:var(--primary-color)}.settings-modal__theme-option.active .theme-option-icon,.settings-modal__theme-option.active span{color:#fff;font-weight:600}.theme-option-icon{font-size:2rem}@media(max-width:640px){.profile-modal__fields{grid-template-columns:1fr}}@media(max-width:1024px){:root{--gendash-header-height: 100px}}:root{--genapps-footer-bg: #ffffff;--genapps-footer-border: #e5e7eb;--genapps-footer-text: #6b7280;--genapps-footer-text-primary: #111827;--genapps-footer-link: #008066;--genapps-footer-link-hover: #006b56;--genapps-footer-shadow: 0 -1px 3px rgba(0, 0, 0, .05);--genapps-spacing-2: .5rem;--genapps-spacing-3: .75rem;--genapps-spacing-4: 1rem;--genapps-spacing-6: 1.5rem;--genapps-radius-base: .25rem}.gendash-footer{background-color:var(--genapps-footer-bg);border-top:1px solid var(--genapps-footer-border);box-shadow:var(--genapps-footer-shadow);width:100%;flex-shrink:0;position:fixed;bottom:0;left:0;right:0;height:40px;z-index:99}.gendash-footer__content{display:flex;justify-content:space-between;align-items:center;height:100%;padding:0 20px}.footer-conta{display:flex;justify-content:space-between;align-items:center;height:40px;padding:0 20px;background-color:#fff;color:var(--primary-color);border-top:1px solid var(--genapps-footer-border);flex-shrink:0}.footer-copyright{font-size:.85rem;color:var(--genapps-footer-text)}.footer-poweredby,.gendash-footer__poweredby{display:flex;align-items:center;font-size:.85rem;color:var(--primary-color);font-weight:700;font-style:italic}.gendash-footer__logo{width:30px;aspect-ratio:1/1;margin-right:5px;object-fit:contain}.retro-graphs{display:flex;flex-direction:column;gap:.75rem;height:100%;padding:.5rem;font-family:MS Gothic,Segoe UI,monospace}.retro-graphs__item{background:#000;border:1px solid rgba(0,0,0,.08);border-radius:4px;padding:.5rem .25rem;min-height:40px;display:flex;flex-direction:column;justify-content:center}.retro-graphs__item-header{display:none}.retro-graphs__canvas-wrapper{background-color:#0d0d0d;border-radius:4px;overflow:hidden;width:100%;height:60px;display:flex;align-items:center}.retro-graphs__canvas{display:block;width:100%;height:100%}.retro-graphs__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;gap:.5rem}.retro-graphs__spinner{width:32px;height:32px;border:3px solid rgba(0,0,0,.1);border-top-color:#008066;border-radius:50%;animation:retroSpin 1s linear infinite}@keyframes retroSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.retro-graphs__loading p{font-size:.75rem;color:#999;margin:0}.retro-graphs__canvas-wrapper canvas{font-family:MS Gothic,Segoe UI,monospace}@media(max-width:768px){.retro-graphs{padding:.25rem;gap:.5rem}.retro-graphs__item{padding:.25rem;min-height:50px}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body{height:100%}body{line-height:1.5;-webkit-font-smoothing:antialiased;font-family:var(--font-family-primary);color:var(--color-text-primary);background-color:var(--color-bg-primary)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}:root{--color-primary: #008066;--color-primary-hover: #006b56;--color-primary-active: #005a48;--color-primary-light: #e6f5f1;--color-primary-lighter: #ccebe3;--color-primary-dark: #004d3d;--color-secondary: #64748b;--color-secondary-hover: #475569;--color-secondary-active: #334155;--color-secondary-light: #f1f5f9;--color-secondary-dark: #1e293b;--color-success: #10b981;--color-success-hover: #059669;--color-success-light: #d1fae5;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-warning-light: #fef3c7;--color-error: #ef4444;--color-error-hover: #dc2626;--color-error-light: #fee2e2;--color-info: #008066;--color-info-light: #e6f5f1;--color-white: #ffffff;--color-black: #000000;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-text-primary: #111827;--color-text-secondary: #6b7280;--color-text-disabled: #9ca3af;--color-text-inverse: #ffffff;--color-bg-primary: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-bg-overlay: rgba(0, 0, 0, .5);--color-border-light: #e5e7eb;--color-border-medium: #d1d5db;--color-border-dark: #9ca3af;--font-family-primary: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "Consolas", "Monaco", "Courier New", monospace;--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: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--radius-none: 0;--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-focus: 0 0 0 3px rgba(0, 128, 102, .5);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out}.app{min-height:100vh;font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}h2{color:var(--color-text-primary);margin-bottom:var(--spacing-5);border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-3)}p{margin-bottom:var(--spacing-4);color:var(--color-text-primary)}p:last-child{margin-bottom:0}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover);text-decoration:underline}a:focus{outline:2px solid var(--color-primary);outline-offset:2px}button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit;transition:all var(--transition-fast)}button:disabled{cursor:not-allowed;opacity:.6}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.mt-0{margin-top:var(--spacing-0)}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mt-6{margin-top:var(--spacing-6)}.mb-0{margin-bottom:var(--spacing-0)}.mb-2{margin-bottom:var(--spacing-2)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.ml-2{margin-left:var(--spacing-2)}.ml-4{margin-left:var(--spacing-4)}.mr-2{margin-right:var(--spacing-2)}.mr-4{margin-right:var(--spacing-4)}.p-2{padding:var(--spacing-2)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.px-4{padding-left:var(--spacing-4);padding-right:var(--spacing-4)}.py-2{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-secondary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.bg-white{background-color:var(--color-white)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.border,.border-light{border:1px solid var(--color-border-light)}.border-medium{border:1px solid var(--color-border-medium)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}@media(max-width:640px){.container{padding:0 var(--spacing-2)}.mt-6{margin-top:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-4)}.p-6{padding:var(--spacing-4)}}.focus-visible:focus{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.gendash-dashboard{min-height:100vh;font-family:var(--font-family-primary);background-color:var(--color-bg-secondary);color:var(--color-text-primary);line-height:var(--line-height-normal);display:flex;flex-direction:column}.gendash-container{flex:1;margin:120px 15px 0;height:calc(100vh - 160px);display:flex;flex-direction:column;overflow-y:auto;min-height:0}.gendash-header{background-color:var(--color-bg-primary);color:var(--color-text-primary);padding:var(--spacing-6) 15px;box-shadow:var(--shadow-md);position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky, 100);border-bottom:2px solid var(--color-primary);height:120px}.gendash-header__content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;width:100%}.gendash-header__logo{flex:1}.gendash-header__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:0;line-height:var(--line-height-tight);text-shadow:none}.gendash-header__subtitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:var(--spacing-1) 0 0 0}.gendash-header__user{display:flex;align-items:center;gap:var(--spacing-4);margin-left:auto}.gendash-header__user-avatar{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-full);overflow:hidden;border:2px solid var(--color-primary);background-color:var(--color-bg-secondary)}.gendash-header__avatar img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full)}.gendash-header__emoji{font-size:var(--font-size-xl);display:flex;align-items:center;justify-content:center}.gendash-header__user-info{text-align:right}.gendash-header__username{font-weight:var(--font-weight-semibold);margin:0;color:var(--color-text-primary);font-size:var(--font-size-base)}.gendash-header__time{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.gendash-main{flex:1;max-width:1400px;margin:0 auto;padding:var(--spacing-8) var(--spacing-6);height:100%;overflow-y:auto;padding-top:var(--spacing-8);padding-bottom:var(--spacing-8)}.gendash-footer{background-color:var(--color-bg-primary);border-top:1px solid var(--color-border-light);padding:5px;box-shadow:0 -2px 4px #0000000d;position:fixed;left:0;right:0;bottom:0;height:40px;z-index:var(--z-fixed, 100)}.gendash-footer__content{margin:0 auto;display:flex;justify-content:space-between;align-items:center;width:100%}.gendash-footer__info{display:flex;gap:var(--spacing-6);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.gendash-footer__status{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.gendash-status-indicator{font-weight:var(--font-weight-medium);padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--font-size-xs)}.gendash-status-indicator--healthy{background-color:var(--color-success-light);color:var(--color-success)}.gendash-status-indicator--warning{background-color:var(--color-warning-light);color:var(--color-warning)}.gendash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-6);margin-bottom:var(--spacing-8);padding:2rem;overflow-y:auto}.gendash-stats{display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--spacing-3);margin-bottom:var(--spacing-8);padding:var(--spacing-4);background:var(--color-bg-primary);border-radius:var(--radius-base);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);width:100%;min-height:180px;align-items:stretch;box-sizing:border-box}.gendash-metric__total,.gendash-metric__apps,.gendash-metric__alerts,.gendash-metric__time,.gendash-metric__meteo{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-4);background:var(--color-bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--color-border-light);transition:var(--transition-base);min-height:min-content;text-align:center;box-sizing:border-box;flex:1 1 0}.gendash-metric__value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.gendash-metric__label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);font-family:var(--font-family-primary);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm);text-decoration:none;white-space:nowrap}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){background-color:var(--color-primary-active);transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-primary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary:disabled{background-color:var(--color-gray-300);color:var(--color-gray-500);cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.btn-sm{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);gap:var(--spacing-1)}.gendash-card{background-color:var(--color-bg-primary);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-base);transition:all var(--transition-base);overflow:hidden}.gendash-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--color-primary-lighter)}.gendash-card__header{padding:var(--spacing-6) var(--spacing-6) var(--spacing-4);border-bottom:1px solid var(--color-border-light);background-color:var(--color-bg-secondary)}.gendash-card__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-2) 0;display:flex;align-items:center;gap:var(--spacing-2)}.gendash-card__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:var(--line-height-normal)}.gendash-card__content{padding:var(--spacing-6)}.gendash-card__footer{padding:var(--spacing-4) var(--spacing-6) var(--spacing-6);display:flex;justify-content:flex-end;gap:var(--spacing-3);background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border-light)}.gendash-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);font-family:var(--font-family-primary);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm);text-decoration:none;white-space:nowrap;border:none;background:none;outline:none}.gendash-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.gendash-button--primary{background-color:var(--color-primary);color:var(--color-text-inverse)}.gendash-button--primary:hover:not(:disabled){background-color:var(--color-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.gendash-button--primary:active:not(:disabled){background-color:var(--color-primary-active);transform:translateY(0);box-shadow:var(--shadow-sm)}.gendash-button--secondary{background-color:var(--color-secondary);color:var(--color-text-inverse)}.gendash-button--secondary:hover:not(:disabled){background-color:var(--color-secondary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.gendash-button--danger{background-color:var(--color-error);color:var(--color-text-inverse)}.gendash-button--danger:hover:not(:disabled){background-color:var(--color-error-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.gendash-button--ghost{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.gendash-button--ghost:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-text-inverse);transform:translateY(-1px);box-shadow:var(--shadow-md)}.gendash-button--sm{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);gap:var(--spacing-1)}.gendash-button--default{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base)}.gendash-button--lg{padding:var(--spacing-4) var(--spacing-8);font-size:var(--font-size-lg);gap:var(--spacing-3)}.gendash-button--disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.gendash-status{display:inline-flex;align-items:center;justify-content:center}.gendash-status--online,.gendash-status--healthy{background-color:var(--color-success)}.gendash-status--offline{background-color:var(--color-gray-400)}.gendash-status--warning{background-color:var(--color-error)}.gendash-status--unhealthy{background-color:var(--color-warning)}.gendash-status--unknown{background-color:var(--color-gray-400)}.gendash-status--online .gendash-status__dot,.gendash-status--healthy .gendash-status__dot{background-color:var(--color-success);box-shadow:0 0 0 2px var(--color-success-light)}.gendash-status--offline .gendash-status__dot{background-color:var(--color-gray-400);box-shadow:0 0 0 2px var(--color-gray-300)}.gendash-status--warning .gendash-status__dot{background-color:var(--color-error);box-shadow:0 0 0 2px var(--color-error-light)}.gendash-status--unhealthy .gendash-status__dot{background-color:var(--color-warning);box-shadow:0 0 0 2px var(--color-warning-light)}.gendash-status--unknown .gendash-status__dot{background-color:var(--color-gray-400);box-shadow:0 0 0 2px var(--color-gray-300)}.gendash-status__dot{width:24px;height:24px;border-radius:var(--radius-full)}.gendash-metric{text-align:center;padding:var(--spacing-4)}.gendash-metric__value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:0;line-height:var(--line-height-tight)}.gendash-metric__label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:var(--spacing-2) 0 0 0;font-weight:var(--font-weight-medium)}.gendash-metric-small{text-align:center;padding:var(--spacing-2);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.gendash-metric-small__value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:0;line-height:var(--line-height-tight)}.gendash-metric-small__label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:var(--spacing-1) 0 0 0;font-weight:var(--font-weight-medium)}.gendash-alert{padding:var(--spacing-4);border-radius:var(--radius-base);border:1px solid;margin-bottom:var(--spacing-4)}.gendash-alert--default{background-color:var(--color-info-light);border-color:var(--color-info);color:var(--color-info)}.gendash-alert--destructive{background-color:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.gendash-alert--warning{background-color:var(--color-warning-light);border-color:var(--color-warning);color:var(--color-warning)}.gendash-alert--success{background-color:var(--color-success-light);border-color:var(--color-success);color:var(--color-success)}.gendash-alert__description{font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-normal)}.gendash-app-icon{transition:transform var(--transition-base);border-radius:var(--radius-sm);object-fit:contain}.gendash-app-icon:hover{transform:scale(1.1)}@media(max-width:1024px){.gendash-main{padding:var(--spacing-6)}.gendash-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-4)}}@media(max-width:768px){.gendash-main{padding:var(--spacing-4)}.gendash-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-4)}.gendash-header{padding:var(--spacing-4)}.gendash-header__content{flex-direction:column;gap:var(--spacing-4);text-align:center}.gendash-header__user{margin-left:0}}@media(max-width:480px){.gendash-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.gendash-card__header,.gendash-card__content{padding:var(--spacing-4)}.gendash-card__footer{padding:var(--spacing-4);flex-direction:column;align-items:stretch;gap:var(--spacing-2)}.gendash-button{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gendash-debug-mode .gendash-card{border:2px dashed var(--color-warning)}.gendash-debug-mode .gendash-card:before{content:"GenApps Card";position:absolute;top:0;left:0;background:var(--color-warning);color:var(--color-white);font-size:var(--font-size-xs);padding:var(--spacing-1);border-radius:var(--radius-sm) var(--radius-sm) 0 0;z-index:1000}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.Toastify__toast,.Toastify__toast-body,.Toastify__toast-icon,.Toastify__close-button,.Toastify__progress-bar{all:unset!important;box-sizing:border-box!important}.Toastify__toast-container{position:fixed!important;z-index:999999!important;width:auto!important;max-width:400px!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.Toastify__toast-container--bottom-right{inset:auto 20px 80px auto!important;transform:none!important;z-index:999999!important}.Toastify__toast-container--bottom-left{inset:auto auto 80px 20px!important;transform:none!important;z-index:999999!important}.Toastify__toast{background:#fff!important;color:#333!important;border-radius:8px!important;box-shadow:0 4px 12px #00000026!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:14px!important;font-weight:400!important;min-height:50px!important;padding:12px 40px 12px 12px!important;margin-bottom:10px!important;max-width:400px!important;width:100%!important;position:relative!important;display:flex!important;align-items:center!important;border:1px solid #e0e0e0!important;transform:none!important;inset:auto!important}.Toastify__toast--error{border-left:4px solid #dc3545!important;background:#fff5f5!important}.Toastify__toast--success{border-left:4px solid #28a745!important;background:#f6fff6!important}.Toastify__toast--warning{border-left:4px solid #ffc107!important;background:#fffbf0!important}.Toastify__toast--info{border-left:4px solid #17a2b8!important;background:#f0f8ff!important}.Toastify__toast-body{margin:0!important;padding:0!important;flex:1!important;display:flex!important;align-items:center!important;font-size:14px!important;font-weight:400!important;color:inherit!important;line-height:1.4!important}.Toastify__close-button,.Toastify__close-button--default{position:absolute!important;top:8px!important;right:8px!important;width:24px!important;height:24px!important;opacity:.7!important;background:transparent!important;border:none!important;font-size:18px!important;line-height:1!important;color:#666!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;border-radius:0!important}.Toastify__close-button:hover,.Toastify__close-button--default:hover{opacity:1!important;color:#333!important;background:#0000000d!important}.Toastify__progress-bar,.Toastify__progress-bar--default{height:3px!important;border-radius:0 0 4px 4px!important;position:absolute!important;bottom:0!important;left:0!important;right:0!important;background:#0000001a!important}.Toastify__progress-bar--warning{background:#ffc107!important}.Toastify__progress-bar--error{background:#dc3545!important}.Toastify__progress-bar--success{background:#28a745!important}.Toastify__progress-bar--info{background:#17a2b8!important}.Toastify__toast-icon{width:20px!important;height:20px!important;margin-right:8px!important;flex-shrink:0!important;display:inline-flex!important}@media(max-width:768px){.Toastify__toast-container{left:10px!important;right:10px!important;width:calc(100vw - 20px)!important;max-width:none!important}.Toastify__toast{width:100%!important;margin:0 0 10px!important}}.Toastify__toast,.Toastify__toast-body,.Toastify__close-button,.Toastify__progress-bar,.Toastify__toast-icon{visibility:visible!important;opacity:1!important;display:block!important;position:relative!important}.Toastify__toast-container{animation:none!important;transform:none!important;transition:none!important}.Toastify__toast{animation:slideInRight .3s ease-out!important}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}:root{--primary-color: #008066;--primary-hover: #009688;--secondary-color: #a2a3a2;--danger-color: #f44336;--text-color: #333;--bg-color: #ffffff;--border-color: #e0e0e0;--font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}.logo-section h1{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:3.8rem;color:#008066;margin-top:.5rem;font-style:italic;font-weight:900;text-shadow:4px 4px 18px rgba(0,0,0,.4)}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;position:relative;overflow:hidden;background:linear-gradient(135deg,#008066,#004d40)}.login-container:before{content:"";position:absolute;inset:0;background-image:url(/background.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.3;z-index:1}.login-box{position:relative;z-index:2;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:3rem;box-shadow:0 20px 40px #0000004d;max-width:450px;width:100%;margin:20px;border:1px solid rgba(255,255,255,.2)}.app-title{font-size:2.8rem;font-weight:900;color:#008066;text-align:center;margin-bottom:.5rem;font-style:italic;text-shadow:2px 2px 8px rgba(0,0,0,.2)}.app-subtitle{text-align:center;color:#666;margin-bottom:2rem;font-size:1.1rem}.login-form{width:100%}.form-group{margin-bottom:1.5rem;position:relative}.input-icon-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:15px;color:#008066;font-size:1.1rem;z-index:2;pointer-events:none}.login-form input{width:100%;padding:1.2rem 1rem 1.2rem 50px;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;transition:all .3s ease;background-color:#f8f9fa;box-sizing:border-box}.login-form input:focus{outline:none;border-color:#008066;box-shadow:0 0 0 3px #00806633;background-color:#fff}.login-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#008066,#009688);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;justify-content:center;align-items:center;gap:10px;margin-top:1rem}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #0080664d}.login-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.footer-info{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.access-info{color:#666;font-size:.9rem;margin-bottom:.5rem}.copyright{color:#999;font-size:.8rem;margin-bottom:1rem}.gen-apps-footer{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:1rem}.footer-logo{width:32px;height:auto;opacity:.8;transition:opacity .3s ease}.footer-logo:hover{opacity:1}.powered-text{color:#008066;font-size:.9rem;font-weight:500}@media(max-width:480px){.login-box{padding:2rem;margin:10px}.app-title{font-size:2.4rem}.login-form input{padding:1rem .8rem 1rem 45px}}:root{--gendash-primary: #008066;--gendash-primary-hover: #009688;--gendash-primary-dark: #005a4f;--gendash-secondary: #a2a3a2;--gendash-danger: #f44336;--gendash-warning: #ff9800;--gendash-success: #4caf50;--gendash-info: #2196f3;--gendash-text: #333;--gendash-text-light: #666;--gendash-bg: #f0f0f0;--gendash-white: #ffffff;--gendash-border: #e0e0e0;--gendash-shadow: 0 2px 10px rgba(0, 0, 0, .1);--gendash-shadow-hover: 0 4px 20px rgba(0, 0, 0, .15);--gendash-radius: 12px;--gendash-radius-sm: 8px;--gendash-transition: all .3s ease;--gendash-font: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}.gendash-dashboard{min-height:100vh;background-color:var(--gendash-bg);font-family:var(--gendash-font)}.gendash-header{background:var(--gendash-white);box-shadow:0 2px 4px #0000000d;height:100px;position:sticky;top:0;z-index:100;border-bottom:1px solid var(--gendash-border);display:flex;align-items:center}.gendash-header__content{width:100%;max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;height:100%}.gendash-header__logo{flex:1;display:flex;align-items:center;justify-content:flex-start}.gendash-header__logo img{height:60px;width:auto;object-fit:contain;transition:filter .3s ease}.gendash-header__logo:hover img{filter:drop-shadow(0 0 8px rgba(20,240,116,.4))}.gendash-header__title-block{flex:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.gendash-header__title-block h1{font-size:1.75rem;font-weight:800;color:var(--gendash-text);margin:0;line-height:1.2;letter-spacing:-.5px}.gendash-header__subtitle{font-size:.85rem;color:var(--gendash-primary);font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-top:4px}.gendash-header__version{font-size:.7rem;color:var(--gendash-gray);margin-top:2px;background:var(--gendash-bg);padding:2px 8px;border-radius:10px}.gendash-header__user{flex:1;display:flex;justify-content:flex-end;align-items:center}.gendash-header__user-container{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:var(--gendash-bg);border-radius:50px;border:1px solid var(--gendash-border);transition:all .3s ease}.gendash-header__user-container:hover{border-color:var(--gendash-primary);box-shadow:0 2px 8px #0000000d}.gendash-header__user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;border:2px solid var(--gendash-white);box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;justify-content:center;background:var(--gendash-primary);color:var(--gendash-white);font-weight:700}.gendash-header__avatar{width:100%;height:100%;object-fit:cover}.gendash-header__emoji{font-size:1.2rem}.gendash-header__user-info{display:flex;flex-direction:column;align-items:flex-start;margin-right:.5rem}.gendash-header__user-name{font-size:.9rem;font-weight:600;color:var(--gendash-text);line-height:1.2}.gendash-header__user-department{font-size:.75rem;color:var(--gendash-gray)}.gendash-logout-btn{background:transparent;border:none;color:var(--gendash-gray);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.gendash-logout-btn:hover{background:#ff44441a;color:var(--gendash-error)}.gendash-main{width:100%;margin:0;padding:2rem;max-width:none}.gendash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-bottom:2rem;padding:0;width:100%}.dashboard__grid-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;max-height:calc(100vh - var(--gendash-header-height) - 120px);padding-right:4px}.dashboard__grid-wrapper::-webkit-scrollbar{width:8px}.dashboard__grid-wrapper::-webkit-scrollbar-track{background:var(--genapps-bg-secondary);border-radius:4px}.dashboard__grid-wrapper::-webkit-scrollbar-thumb{background:var(--genapps-border-light);border-radius:4px}.dashboard__grid-wrapper::-webkit-scrollbar-thumb:hover{background:var(--genapps-primary-color)}@media(min-width:1600px){.gendash-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}}@media(min-width:1400px)and (max-width:1599px){.gendash-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.25rem}}@media(min-width:1200px)and (max-width:1399px){.gendash-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}}@media(min-width:992px)and (max-width:1199px){.gendash-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1rem}}@media(min-width:768px)and (max-width:991px){.gendash-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media(max-width:767px){.gendash-grid{grid-template-columns:1fr;gap:1rem}}.gendash-card{background:var(--gendash-white);border-radius:var(--gendash-radius);box-shadow:var(--gendash-shadow);transition:var(--gendash-transition);overflow:hidden;border:1px solid var(--gendash-border);min-height:380px}.gendash-card:hover{box-shadow:var(--gendash-shadow-hover);transform:translateY(-2px)}.gendash-app-icon{width:48px;height:48px;transition:var(--gendash-transition);border-radius:8px;object-fit:contain;background:#f8f9fa;padding:4px;border:1px solid #e9ecef;box-shadow:0 4px 8px #0003}.gendash-app-icon:hover{transform:scale(1.05);border-color:var(--gendash-primary)}.gendash-card__header{padding:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;height:80px}.gendash-card__header-left{display:flex;align-items:flex-start;gap:.75rem;flex:1;min-width:0}.gendash-card__title{font-size:1.1rem;font-weight:700;color:var(--gendash-text);margin:0 0 .2rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gendash-card__description{font-size:.7rem;font-weight:400;color:var(--gendash-text-light);margin:0;line-height:1.1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.gendash-card__content{padding:1rem 1rem 0}.gendash-card__footer{padding:1rem;display:flex;justify-content:space-between;align-items:center}.gendash-status{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:50px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.gendash-status--online{background:#4caf5026;color:var(--gendash-success);border:1px solid rgba(76,175,80,.3)}.gendash-status--offline{background:#f4433626;color:var(--gendash-danger);border:1px solid rgba(244,67,54,.3)}.gendash-status--warning{background:#ff980026;color:var(--gendash-warning);border:1px solid rgba(255,152,0,.3)}.gendash-status--degraded{background:#d4a01726;color:#d4a017;border:1px solid rgba(212,160,23,.3);box-shadow:0 0 10px #d4a0174d}.gendash-status--healthy{background:#4caf5026;color:var(--gendash-success);border:1px solid rgba(76,175,80,.3)}.gendash-status--unhealthy{background:#ff980026;color:var(--gendash-warning);border:1px solid rgba(255,152,0,.3)}.gendash-status--unknown{background:#9e9e9e26;color:var(--gendash-gray);border:1px solid rgba(158,158,158,.3)}.gendash-status__dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.gendash-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--gendash-radius-sm);font-weight:600;font-size:.9rem;cursor:pointer;transition:var(--gendash-transition);border:none;text-decoration:none;outline:none}.gendash-button:focus{outline:2px solid var(--gendash-primary);outline-offset:2px}.gendash-button--sm{padding:.5rem 1rem;font-size:.8rem}.gendash-button--default{padding:.75rem 1.5rem}.gendash-button--lg{padding:1rem 2rem;font-size:1rem}.gendash-button--primary{background:var(--gendash-primary);color:var(--gendash-white)}.gendash-button--primary:hover:not(.gendash-button--disabled){background:var(--gendash-primary-hover)}.gendash-button--secondary{background:var(--gendash-secondary);color:var(--gendash-white)}.gendash-button--secondary:hover:not(.gendash-button--disabled){background:#8e8f8e}.gendash-button--danger{background:var(--gendash-danger);color:var(--gendash-white)}.gendash-button--danger:hover:not(.gendash-button--disabled){background:#d32f2f}.gendash-button--ghost{background:transparent;color:var(--gendash-primary);border:1px solid var(--gendash-border)}.gendash-button--ghost:hover:not(.gendash-button--disabled){background:#0080660d;border-color:var(--gendash-primary)}.gendash-button--disabled{opacity:.5;cursor:not-allowed}.gendash-metric{text-align:center;padding:1rem}.gendash-metric__value{font-size:2rem;font-weight:900;color:var(--gendash-primary);margin:0;text-align:center}.gendash-metric__label{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-size:.8rem;color:var(--gendash-text-light);text-transform:uppercase;letter-spacing:.05em;margin:0}.gendash-metrics{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:5px;margin-top:.75rem}.gendash-metric-small{text-align:center;padding:.5rem .25rem;background:#ffffff80;border-radius:4px;border:1px solid rgba(0,0,0,.08);transition:var(--gendash-transition)}.gendash-metric-small:hover{background:#0080660d;border-color:var(--gendash-primary);transform:translateY(-1px)}.gendash-metric-small__value{font-size:.9rem;font-weight:700;color:var(--gendash-primary);margin:0;line-height:1.2}.gendash-metric-small__label{font-size:.5rem;color:var(--gendash-text-light);text-transform:uppercase;letter-spacing:.02em;margin:.1rem 0 0;line-height:1}.gendash-metric-small:nth-child(1){grid-column:1;grid-row:1}.gendash-metric-small:nth-child(2){grid-column:2;grid-row:1}.gendash-metric-small:nth-child(3){grid-column:3;grid-row:1}.gendash-metric-small:nth-child(4){grid-column:1;grid-row:2}.gendash-metric-small:nth-child(5){grid-column:2;grid-row:2}.gendash-metric-small:nth-child(6){grid-column:3;grid-row:2}.gendash-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.gendash-modal{background:var(--gendash-white);border-radius:var(--gendash-radius);box-shadow:var(--gendash-shadow-hover);width:80vw;height:80vh;display:flex;flex-direction:column;overflow:hidden;margin:auto}.gendash-modal__header{padding:1.5rem;border-bottom:1px solid var(--gendash-border);display:flex;justify-content:space-between;align-items:center;background:var(--gendash-bg)}.gendash-modal__header h3{margin:0;color:var(--gendash-primary);font-size:1.25rem;font-weight:700}.gendash-modal__close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--gendash-text-light);padding:.5rem;border-radius:4px;transition:var(--gendash-transition)}.gendash-modal__close:hover{background:var(--gendash-danger);color:var(--gendash-white)}.gendash-modal__content{flex:1;padding:0;overflow-y:auto}.gendash-logs-container{height:100%}.gendash-logs-info{padding:1rem;background:var(--gendash-bg);border-bottom:1px solid var(--gendash-border)}.gendash-logs-info p{margin:.25rem 0;font-size:.9rem;color:var(--gendash-text)}.gendash-logs-output{padding:1rem;background:#1a1a1a;color:#0f0;font-family:Courier New,monospace;font-size:.85rem;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.gendash-logs-output pre{margin:0;font-family:inherit;font-size:inherit;color:inherit}.gendash-modal__footer{padding:1rem;border-top:1px solid var(--gendash-border);background:var(--gendash-bg);display:flex;justify-content:flex-end;gap:1rem}.gendash-modal--logs{padding:0;overflow:hidden}.gendash-modal__container{display:flex;flex-direction:column;height:100%;width:100%}.gendash-modal__content--logs{flex-grow:1;padding:0;display:flex;flex-direction:column;overflow-y:auto;width:100%;max-width:100%}.gendash-logs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--gendash-text-light)}.gendash-logs-loading__spinner{width:40px;height:40px;border:4px solid var(--gendash-border);border-top:4px solid var(--gendash-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gendash-logs-error{padding:2rem;text-align:center;color:var(--gendash-danger)}.gendash-logs-error h4{margin:0 0 1rem;color:var(--gendash-danger)}.gendash-logs-error p{margin:0 0 1.5rem;color:var(--gendash-text)}.gendash-logs-empty{padding:2rem;text-align:center;color:var(--gendash-text-light)}.gendash-logs-container{flex:1;display:flex;flex-direction:column;height:100%}.gendash-logs-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--gendash-bg);border-bottom:1px solid var(--gendash-border)}.gendash-logs-header__info{font-size:.9rem;color:var(--gendash-text)}.gendash-logs-header__info strong{color:var(--gendash-primary)}.gendash-logs-output--real{flex:1;background:#1a1a1a;color:#0f0;font-family:Courier New,Fira Code,Consolas,monospace;font-size:.85rem;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word;line-height:1.4;padding:0;height:100%}.gendash-logs-text{margin:0;padding:1rem;font-family:inherit;font-size:1.05rem;color:inherit;white-space:pre-wrap;word-break:break-word}.gendash-modal__footer--logs{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--gendash-bg);border-top:1px solid var(--gendash-border)}.gendash-logs-footer-info{font-size:.8rem;color:var(--gendash-text-light)}.gendash-logs-footer-info code{background:#0000001a;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;color:var(--gendash-primary)}.gendash-button--small{padding:.4rem .8rem;font-size:.85rem}.gendash-stats{display:flex;flex-direction:row;flex-wrap:nowrap;gap:.75rem;margin-bottom:2rem;padding:1rem;background:var(--gendash-white);border-radius:var(--gendash-radius);box-shadow:var(--gendash-shadow);border:1px solid var(--gendash-border);height:auto;min-height:180px;align-items:stretch;width:100%;box-sizing:border-box}.gendash-metric__total,.gendash-metric__apps,.gendash-metric__alerts,.gendash-metric__time,.gendash-metric__meteo{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1rem;background:#00000005;border-radius:var(--gendash-radius-sm);border:1px solid var(--gendash-border);transition:var(--gendash-transition);min-height:min-content;text-align:center;box-sizing:border-box}.gendash-metric__total,.gendash-metric__apps,.gendash-metric__alerts{flex-grow:15}.gendash-metric__time{flex-grow:20}.gendash-metric__meteo{flex-grow:35}.gendash-metric__meteo{padding:.5rem 1rem}.gendash-stats .gendash-metric__value{font-size:2.5rem!important;font-weight:800!important;text-align:center;line-height:1.1;margin-bottom:.5rem}.gendash-stats .gendash-metric:hover{background:#0080660d;border-color:var(--gendash-primary);transform:translateY(-2px)}.gendash-metric__time .gendash-refresh-progress{width:90%;margin-top:.5rem;height:.25rem;background-color:var(--gendash-border);border-radius:.25rem;overflow:hidden;position:absolute;bottom:.5rem;left:5%}.gendash-components-health{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;padding:.5rem;background:#00000005;border-radius:var(--gendash-radius-sm);border:1px solid var(--gendash-border)}.gendash-component-health{display:flex;flex-direction:column;align-items:center;gap:.3rem;flex:1;cursor:pointer;transition:var(--gendash-transition);padding:.25rem;border-radius:4px}.gendash-component-health:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.gendash-component-health--online{background-color:#14f0740d}.gendash-component-health--warning{background-color:#ff8c000d}.gendash-component-health--offline{background-color:#ff44440d}.gendash-component-health--unknown{background-color:#8080800d}.gendash-component-health--external{background-color:#2196f30d}.gendash-component-health--online:hover{background-color:#14f07426}.gendash-component-health--warning:hover{background-color:#ff8c0026}.gendash-component-health--offline:hover{background-color:#ff444426}.gendash-component-health--external:hover{background-color:#2196f326}.gendash-component-health--online i{color:#14f074}.gendash-component-health--warning i{color:#ff8c00}.gendash-component-health--offline i{color:#f44}.gendash-component-health--unknown i{color:gray}.gendash-component-health--degraded i{color:#d4a017}.gendash-component-health--external i{color:#2196f3}.gendash-component-health--disabled{cursor:default;opacity:.6;background-color:transparent!important}.gendash-component-health--disabled:hover{background-color:transparent;transform:none;box-shadow:none}.gendash-component-health--disabled .gendash-component-label{color:var(--gendash-text-light);font-style:italic}.gendash-component-health--disabled i{color:var(--gendash-text-light);opacity:.5}.gendash-component-label{font-size:.55rem;font-weight:600;color:var(--gendash-text-light);text-transform:uppercase;letter-spacing:.02em;text-align:center;line-height:1}.gendash-metric-small__value--unavailable{color:var(--gendash-text-light)!important;font-style:italic;opacity:.7;font-size:.8rem}@media(max-width:768px){.gendash-main,.gendash-header{padding:1rem}.gendash-header__content{flex-direction:column;gap:1rem;text-align:center}.gendash-components-health{flex-direction:column;gap:.5rem}.gendash-component-health{justify-content:space-between}.gendash-stats{display:flex;flex-direction:row;flex-wrap:wrap;height:200px;max-height:200px}}.weather-widget-container{width:100%;height:8rem;max-height:9rem;border-radius:12px;overflow:hidden;background:#fff;border:none;box-shadow:0 12px 24px #0f172a14;position:relative}.weather-widget-iframe{width:100%;height:100%;border:none;background:transparent;border-radius:12px;position:relative;z-index:1}.gendash-metric__time .gendash-metric__value{font-size:2.5rem!important;font-weight:800!important;line-height:1.3}.weather-widget-container.loading:after{content:"Carregando...";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#6c757d;font-size:.9rem;font-weight:500;z-index:2}.weather-widget-container.error:after{content:"Erro ao carregar";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#dc3545;font-size:.9rem;font-weight:500;z-index:2}
