body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-brand-color:#5b6a80;--secondary-brand-color:#8c9ca7;--background-color:#f8f9fa;--surface-1-bg:#fff;--surface-2-bg:#5b6a80;--border-color:#e0e2e5;--box-shadow-color:#00000014;--card-bg-color:var(--surface-1-bg);--card-header-bg:#0d67b1;--info-block-bg:#f0f8ff;--text-color:#343a40;--subtle-text-color:#6c757d;--heading-color:var(--text-color);--link-color:var(--primary-brand-color);--link-hover-color:#4c596d;--button-primary-bg:var(--primary-brand-color);--button-primary-text:#fff;--button-secondary-bg:var(--surface-2-bg);--button-secondary-text:var(--text-color);--button-border-color:var(--border-color);--input-bg:var(--surface-2-bg);--input-border:var(--border-color);--status-green:#28a745;--status-red:#dc3545;--status-orange:#ffc107;--status-gray:#6c757d;--signal-color:#a0a0a0;--footer-bg:var(--surface-1-bg);--footer-text:var(--subtle-text-color);--footer-border:var(--border-color);--version-tag-bg:var(--surface-2-bg);--version-tag-text:var(--subtle-text-color);--status-green-rgb:40,167,69;--status-orange-rgb:255,193,7;--status-red-rgb:220,53,69;--info-block-bg:#f0f0f0;--info-block-border:#e0e0e0;--info-block-shadow:#00000014;--info-block-title-color:var(--heading-color);--info-block-text-color:var(--text-color);--info-block-link-color:var(--link-color);--info-block-link-hover-color:var(--link-hover-color);--info-block-strong-color:var(--text-color);--info-block-hr-color:var(--border-color);--card-header-hover-bg:var(--surface-2-bg)}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;background-color:var(--background-color);color:#343a40;color:var(--text-color);font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100%;margin:0;padding:0;transition:background-color .3s ease,color .3s ease}#root,.App{display:flex;flex-direction:column;min-height:100vh}.App{background-color:#f8f9fa;background-color:var(--background-color);color:#343a40;color:var(--text-color);transition:background-color .3s ease,color .3s ease}.container{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:20px;width:100%}.main-content{flex-grow:1;padding:20px 0}.inline-link{color:#5b6a80;color:var(--link-color);font-weight:500;text-decoration:none;transition:color .2s ease}.inline-link:hover{color:#4c596d;color:var(--link-hover-color);text-decoration:underline}.service-item .signal-icon{color:#a0a0a0;color:var(--signal-color)}.status-live{color:#28a745;color:var(--status-green)}.status-offline{color:#dc3545;color:var(--status-red)}.status-restarting{color:#ffc107;color:var(--status-orange)}.status-api-error,.status-loading{color:#6c757d;color:var(--status-gray)}@media (max-width:768px){.container{padding:0}}.card{border:1px solid #e0e2e5;border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 8px #00000014;box-shadow:0 4px 8px var(--box-shadow-color);margin-bottom:20px;overflow:hidden;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.card,.service-category-card .card-header{background-color:#fff;background-color:var(--card-bg-color)}.service-category-card .card-header{border-bottom:1px solid #e0e2e5;border-bottom:1px solid var(--border-color);color:#343a40;color:var(--heading-color);font-size:1.2rem;font-weight:600;padding:15px 20px;transition:background-color .3s ease}.service-category-card .card-header:hover{background-color:#5b6a80;background-color:var(--card-header-hover-bg)}body.dark{--primary-brand-color:#8daadf;--secondary-brand-color:#a9bcc7;--background-color:#212529;--surface-1-bg:#2c3034;--surface-2-bg:#34383d;--border-color:#495057;--box-shadow-color:#0006;--card-bg-color:var(--surface-1-bg);--card-header-bg:#4591dc;--info-block-bg:#1e2b3a;--text-color:#e0e0e0;--subtle-text-color:#b0b0b0;--heading-color:var(--text-color);--link-color:var(--primary-brand-color);--link-hover-color:#7a9bcd;--button-primary-bg:var(--primary-brand-color);--button-primary-text:#212529;--button-secondary-bg:var(--surface-2-bg);--button-secondary-text:var(--text-color);--button-border-color:var(--border-color);--input-bg:var(--surface-2-bg);--input-border:var(--border-color);--status-green:#4caf50;--status-red:#f44336;--status-orange:#ffd54f;--status-gray:#9e9e9e;--signal-color:#bbb;--footer-bg:var(--surface-2-bg);--footer-text:var(--subtle-text-color);--footer-border:var(--border-color);--version-tag-bg:var(--surface-1-bg);--version-tag-text:var(--text-color);--status-green-rgb:76,175,80;--status-orange-rgb:255,213,79;--status-red-rgb:244,67,54;--info-block-bg:var(--surface-2-bg);--info-block-border:var(--border-color);--info-block-shadow:#0006;--info-block-title-color:var(--heading-color);--info-block-text-color:var(--text-color);--info-block-link-color:var(--link-color);--info-block-link-hover-color:var(--link-hover-color);--info-block-strong-color:var(--text-color);--info-block-hr-color:var(--border-color);--card-header-hover-bg:#40444a}body.high-contrast{--primary-brand-color:#ff0;--secondary-brand-color:#0ff;--background-color:#000;--surface-1-bg:#000;--surface-2-bg:#333;--border-color:#fff;--box-shadow-color:#0000;--card-bg-color:var(--surface-1-bg);--card-header-bg:gold;--info-block-bg:#2c3e5c;--text-color:#fff;--subtle-text-color:#ddd;--heading-color:#fff;--link-color:var(--primary-brand-color);--link-hover-color:gold;--button-primary-bg:#fff;--button-primary-text:#000;--button-secondary-bg:#333;--button-secondary-text:#fff;--button-border-color:#fff;--input-bg:#000;--input-border:#fff;--status-green:#0f0;--status-red:red;--status-orange:orange;--status-gray:silver;--signal-color:silver;--footer-bg:var(--background-color);--footer-text:var(--subtle-text-color);--footer-border:var(--border-color);--version-tag-bg:var(--surface-2-bg);--version-tag-text:var(--text-color);--status-green-rgb:0,255,0;--status-orange-rgb:255,165,0;--status-red-rgb:255,0,0;--info-block-bg:var(--surface-2-bg);--info-block-border:var(--border-color);--info-block-shadow:#0000;--info-block-title-color:var(--heading-color);--info-block-text-color:var(--text-color);--info-block-link-color:var(--link-color);--info-block-link-hover-color:var(--link-hover-color);--info-block-strong-color:var(--text-color);--info-block-hr-color:var(--border-color);--card-header-hover-bg:#444}body.blue-dusk{--primary-brand-color:#6a8ead;--secondary-brand-color:#9fb7cd;--background-color:#2e3a4b;--surface-1-bg:#3b485a;--surface-2-bg:#49576d;--border-color:#5c6b80;--box-shadow-color:#0006;--card-bg-color:var(--surface-1-bg);--card-header-bg:#5a86c5;--info-block-bg:#fff;--text-color:#e6ebf0;--subtle-text-color:#b8c4cd;--heading-color:var(--text-color);--link-color:#b3d4fc;--link-hover-color:#8abcf8;--button-primary-bg:var(--link-color);--button-primary-text:var(--background-color);--button-secondary-bg:var(--surface-2-bg);--button-secondary-text:var(--text-color);--button-border-color:var(--border-color);--input-bg:var(--surface-2-bg);--input-border:var(--border-color);--status-green:#6cc88c;--status-red:#e87070;--status-orange:#ffd98c;--status-gray:#aab5bf;--signal-color:#b8c4cd;--footer-bg:var(--surface-2-bg);--footer-text:var(--subtle-text-color);--footer-border:var(--border-color);--version-tag-bg:var(--surface-1-bg);--version-tag-text:var(--text-color);--status-green-rgb:108,200,140;--status-orange-rgb:255,217,140;--status-red-rgb:232,112,112;--info-block-bg:var(--surface-2-bg);--info-block-border:var(--border-color);--info-block-shadow:#0006;--info-block-title-color:var(--heading-color);--info-block-text-color:var(--text-color);--info-block-link-color:var(--link-color);--info-block-link-hover-color:var(--link-hover-color);--info-block-strong-color:var(--text-color);--info-block-hr-color:var(--border-color);--card-header-hover-bg:#5a6a80}body.warm-earth{--primary-brand-color:#8b8c6c;--secondary-brand-color:#a79d8e;--background-color:#efebe0;--surface-1-bg:#fff;--surface-2-bg:#f5f3ed;--border-color:#d3cdc0;--box-shadow-color:#0000001a;--card-bg-color:var(--surface-1-bg);--card-header-bg:#c67f3d;--info-block-bg:#f5eee6;--text-color:#4a4a40;--subtle-text-color:#7e7b71;--heading-color:var(--text-color);--link-color:var(--primary-brand-color);--link-hover-color:#75765d;--button-primary-bg:var(--primary-brand-color);--button-primary-text:#fff;--button-secondary-bg:var(--surface-2-bg);--button-secondary-text:var(--text-color);--button-border-color:var(--border-color);--input-bg:var(--surface-2-bg);--input-border:var(--border-color);--status-green:#28a745;--status-red:#dc3545;--status-orange:#ffc107;--status-gray:#6c757d;--signal-color:#8c8c8c;--footer-bg:var(--surface-2-bg);--footer-text:var(--subtle-text-color);--footer-border:var(--border-color);--version-tag-bg:var(--surface-2-bg);--version-tag-text:var(--subtle-text-color);--status-green-rgb:40,167,69;--status-orange-rgb:255,193,7;--status-red-rgb:220,53,69;--info-block-bg:var(--surface-2-bg);--info-block-border:var(--border-color);--info-block-shadow:#0000001a;--info-block-title-color:var(--heading-color);--info-block-text-color:var(--text-color);--info-block-link-color:var(--link-color);--info-block-link-hover-color:var(--link-hover-color);--info-block-strong-color:var(--text-color);--info-block-hr-color:var(--border-color);--card-header-hover-bg:#eae5db}.page-header{align-items:center;background-color:#fff;border-bottom:1px solid #e0e2e5;box-shadow:0 2px 5px #00000014;box-shadow:0 2px 5px var(--box-shadow-color);flex-wrap:wrap;justify-content:space-between;padding:20px;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.page-header h1{color:#343a40;color:var(--heading-color);font-size:2rem;font-weight:700;margin:0;transition:color .3s ease}.header-controls{flex-wrap:wrap;gap:15px}.last-updated{color:#6c757d;color:var(--subtle-text-color);font-size:.9rem;margin-right:15px;white-space:nowrap}.control-group{align-items:center;display:flex;gap:5px}.control-group label{white-space:nowrap}.control-group label,.control-group select{color:#343a40;color:var(--text-color);font-size:.9rem}.control-group select{appearance:none;background-color:#5b6a80;background-color:var(--input-bg);background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%20viewBox%3D%220%200%20292.4%20292.4%22%3E%3Cpath%20fill%3D%22%236C757D%22%20d%3D%22M287%20197.3L159.1%2069.5c-3.2-3.2-8.3-3.2-11.6%200L5.4%20197.3c-3.2%203.2-3.2%208.3%200%2011.6l10.8%2010.8c3.2%203.2%208.3%203.2%2011.6%200l113.8-113.8c3.2-3.2%208.3-3.2%2011.6%200l113.8%20113.8c3.2%203.2%208.3%203.2%2011.6%200l10.8-10.8c3.2-3.2%203.2-8.3%200-11.6z%22%2F%3E%3C%2Fsvg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:10px;border:1px solid #e0e2e5;border:1px solid var(--input-border);border-radius:var(--border-radius-small);cursor:pointer;padding:5px 25px 5px 8px;transition:background-color .3s ease,border-color .3s ease,color .3s ease}@media (max-width:600px){.page-header{gap:15px}.header-controls,.page-header{align-items:flex-start;flex-direction:column}.header-controls{width:100%}.control-group{justify-content:space-between;width:100%}.control-group select{min-width:120px;width:auto}}.alert-banner{border-radius:var(--border-radius);color:#fff;display:flex;font-size:1rem;font-weight:500;gap:10px;justify-content:center;margin-bottom:20px;padding:15px 20px}.alert-banner.info{background-color:#17a2b8}.alert-banner.success{background-color:#28a745;background-color:var(--status-green)}.alert-banner.warning{background-color:#ffc107;background-color:var(--status-orange);color:#333}.alert-banner.error{background-color:#dc3545;background-color:var(--status-red)}.alert-banner.critical{animation:pulse 1.5s infinite alternate;background-color:#c00;font-weight:700}.alert-banner.flash{border-radius:0 0 var(--border-radius) var(--border-radius);box-shadow:0 2px 10px #0003;left:50%;margin-top:0;min-width:300px;position:fixed;top:0;transform:translateX(-50%);width:auto;z-index:1000}.service-category-card .card-body{padding:20px}.service-category-card .service-list{list-style:none;margin:0;padding:0}.service-category-card .service-list li{align-items:center;border-bottom:1px solid #e0e2e5;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:12px 0}.service-category-card .service-list li:last-child{border-bottom:none}.footer{background-color:#fff;background-color:var(--footer-bg);border-top:1px solid #e0e2e5;border-top:1px solid var(--footer-border);color:#6c757d;color:var(--footer-text);font-size:.9rem;margin-top:auto;text-align:center;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.modal-content{background-color:var(--card-bg-color);border-radius:var(--border-radius);box-shadow:0 5px 15px #00000014;box-shadow:0 5px 15px var(--box-shadow-color);color:#343a40;color:var(--text-color);max-width:450px;position:relative;transition:background-color .3s ease,color .3s ease,box-shadow .3s ease}.modal-close-button{background:none;border:none;color:#6c757d;color:var(--subtle-text-color);cursor:pointer;font-size:1.5rem;position:absolute;right:10px;top:10px}.modal-close-button:hover{color:#343a40;color:var(--text-color)}.modal-content h2{color:#343a40;color:var(--heading-color);margin-bottom:20px;text-align:center}.modal-form label{color:#343a40;color:var(--text-color);display:block;font-weight:500;margin-bottom:8px}.modal-form input[type=password],.modal-form input[type=text]{background-color:#5b6a80;background-color:var(--input-bg);border:1px solid #e0e2e5;border:1px solid var(--input-border);border-radius:var(--border-radius-small);color:#343a40;color:var(--text-color);margin-bottom:15px;padding:10px;transition:border-color .3s ease,background-color .3s ease,color .3s ease;width:100%}.modal-form input[type=password]:focus,.modal-form input[type=text]:focus{border-color:#5b6a80;border-color:var(--primary-brand-color);outline:none}.modal-error{color:#dc3545;color:var(--status-red);font-size:.9rem;margin-bottom:15px;text-align:center}.modal-actions button{border-radius:var(--border-radius-small);font-size:1rem;font-weight:500;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.modal-actions .btn-primary{background-color:#5b6a80;background-color:var(--button-primary-bg);border:1px solid #5b6a80;border:1px solid var(--button-primary-bg);color:#fff;color:var(--button-primary-text)}.modal-actions .btn-primary:hover{opacity:.9}.modal-actions .btn-secondary{background-color:#5b6a80;background-color:var(--button-secondary-bg);border:1px solid #e0e2e5;border:1px solid var(--button-border-color);color:#343a40;color:var(--button-secondary-text)}.modal-actions .btn-secondary:hover{background-color:#e0e2e5;background-color:var(--border-color)}.modal-loading-spinner{animation:spin 1s linear infinite;border:4px solid #e0e2e5;border-top:4px solid #5b6a80;border:4px solid var(--input-border);border-radius:50%;border-top-color:var(--primary-brand-color);height:24px;margin:10px auto;width:24px}.service-item{border-bottom:1px solid #e0e2e5;border-bottom:1px solid var(--border-color);gap:10px;padding:12px 0}.service-details{flex-grow:1;min-width:150px}.service-name{color:#343a40;white-space:nowrap}.service-version{color:#6c757d;color:var(--subtle-text-color);font-size:.85em;white-space:nowrap}.service-status{gap:8px;min-width:100px}.status-text{font-weight:500;white-space:nowrap}.service-links{display:flex;flex-wrap:wrap;gap:10px}.service-links .link-button{background-color:#5b6a80;background-color:var(--button-secondary-bg);border:1px solid #e0e2e5;border:1px solid var(--button-border-color);border-radius:var(--border-radius-small);color:#343a40;color:var(--button-secondary-text);cursor:pointer;font-size:.9em;padding:6px 12px;text-decoration:none;transition:background-color .2s ease,border-color .2s ease;white-space:nowrap}.service-links .link-button:hover{background-color:#e0e2e5;background-color:var(--border-color)}.action-buttons{flex-wrap:wrap;gap:8px;justify-content:flex-end;min-width:180px}.action-buttons .action-button{border:none;border-radius:var(--border-radius-small);cursor:pointer;font-size:.9em;font-weight:500;padding:6px 12px;transition:opacity .2s ease;white-space:nowrap}.action-buttons .action-button:hover{opacity:.9}.action-buttons .start-button{background-color:#28a745;background-color:var(--status-green);color:#fff}.action-buttons .stop-button{background-color:#dc3545;background-color:var(--status-red);color:#fff}.action-buttons .restart-button{background-color:#ffc107;background-color:var(--status-orange);color:#000}@media (max-width:768px){.service-item{align-items:flex-start;flex-direction:column;padding:10px 0}.service-details,.service-status{margin-bottom:5px;width:100%}.service-status{justify-content:flex-start}.action-buttons,.service-links{justify-content:flex-start;width:100%}}.service-category-card{background-color:#fff;border:1px solid #e0e2e5;border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 8px #00000014;box-shadow:0 4px 8px var(--box-shadow-color);margin-bottom:20px;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.service-category-card .card-content{border-top:1px solid #e0e2e5;border-top:1px solid var(--border-color);padding:20px}.info-block-container{background-color:var(--info-block-bg);border:1px solid #e0e0e0;border:1px solid var(--info-block-border);box-shadow:0 2px 5px #00000014;box-shadow:0 2px 5px var(--info-block-shadow);transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.info-block-title{color:#343a40;color:var(--info-block-title-color);transition:color .3s ease}.info-block-content li,.info-block-content p{color:#343a40;color:var(--info-block-text-color);transition:color .3s ease}.info-block-content hr{border-top:1px solid #e0e2e5;border-top:1px solid var(--info-block-hr-color);transition:border-color .3s ease}.info-block-content .inline-link{color:#5b6a80;color:var(--info-block-link-color)}.info-block-content .inline-link:hover{color:#4c596d;color:var(--info-block-link-hover-color)}.info-block-content strong{color:#343a40;color:var(--info-block-strong-color);transition:color .3s ease}.page-header{align-items:stretch;background-color:var(--surface-1-bg);border-bottom:1px solid var(--border-color);box-shadow:0 2px 4px var(--box-shadow-shadow-color);color:var(--text-color);display:flex;flex-direction:column;padding:15px 20px}.header-top{gap:20px;justify-content:space-between;width:100%}.header-top,.logo-container{align-items:center;display:flex}.logo{height:50px;margin-right:15px}.header-title{flex-grow:1;font-size:12px;margin-left:20px;text-align:left}.header-title h1{color:var(--text-color);font-size:2em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-controls-container{align-items:center;display:flex;gap:20px}.refresh-control,.theme-selector{align-items:center;display:flex;gap:10px}.refresh-control label,.theme-selector label{color:var(--subtle-text-color);font-size:.9em}.refresh-control select,.theme-selector select{background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:5px;color:var(--text-color);cursor:pointer;font-size:.9em;padding:5px 8px;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.config-management-button,.config-management-control{align-items:center;display:flex}.config-management-button{background:var(--primary-brand-color);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85em;font-weight:500;gap:4px;padding:6px 12px;transition:background-color .2s ease,transform .1s ease}.config-management-button:hover{background:var(--primary-brand-color-hover);transform:translateY(-1px)}.config-management-button:active{transform:translateY(0)}.last-updated-banner{color:var(--subtle-text-color);font-size:.85em;margin-top:10px;text-align:right}@media (max-width:992px){.header-top{align-items:flex-start;flex-direction:column}.header-controls-container{justify-content:flex-start;margin-top:15px;width:100%}.header-title h1{font-size:1.8em}}@media (max-width:480px){.page-header{padding:15px}.header-title h1{font-size:1.5em}.logo{height:40px}.config-management-control,.refresh-control,.theme-selector{font-size:.9em;padding:6px 12px}}.alert-banner{align-items:center;border-radius:.5rem;box-shadow:0 4px 6px #0000001a;display:block;font-size:1.125rem;font-weight:600;justify-content:space-between;letter-spacing:.025em;margin-bottom:1px;padding:1rem 1.5rem;text-align:center;transition:all .3s ease-in-out;width:auto}.alert-banner__content-wrapper{align-items:center;display:flex;flex-grow:1;justify-content:center}.alert-banner__icon-wrapper{flex-shrink:0;margin-right:.75rem}.alert-banner__dismiss-button{border-radius:9999px;margin-left:1rem;outline:none;padding:.25rem}.alert-banner__dismiss-button:focus{box-shadow:0 0 0 2px #ffffff80,0 0 0 4px var(--focus-ring-color)}.alert-banner--success{background-color:#22c55e;color:#fff}.alert-banner--success .alert-banner__dismiss-button{color:#fff}.alert-banner--success .alert-banner__dismiss-button:hover{background-color:#16a34a}.alert-banner--success .alert-banner__dismiss-button:focus{--focus-ring-color:#16a34a}.alert-banner--info{background-color:#3b82f6;color:#fff}.alert-banner--info .alert-banner__dismiss-button{color:#fff}.alert-banner--info .alert-banner__dismiss-button:hover{background-color:#2563eb}.alert-banner--info .alert-banner__dismiss-button:focus{--focus-ring-color:#2563eb}.alert-banner--warning{background-color:#fbbf24;color:#1f2937}.alert-banner--warning .alert-banner__dismiss-button{color:#1f2937}.alert-banner--warning .alert-banner__dismiss-button:hover{background-color:#f97316}.alert-banner--warning .alert-banner__dismiss-button:focus{--focus-ring-color:#f97316}.alert-banner--error{background-color:#ef4444;color:#fff}.alert-banner--error .alert-banner__dismiss-button{color:#fff}.alert-banner--error .alert-banner__dismiss-button:hover{background-color:#dc2626}.alert-banner--error .alert-banner__dismiss-button:focus{--focus-ring-color:#dc2626}.alert-banner--gradient.alert-banner--success{background:linear-gradient(90deg,#4ade80,#16a34a);color:#fff}.alert-banner--gradient.alert-banner--success .alert-banner__dismiss-button:hover{background-color:#16a34a33}.alert-banner--gradient.alert-banner--success .alert-banner__dismiss-button:focus{--focus-ring-color:#16a34a}.alert-banner--gradient.alert-banner--info{background:linear-gradient(90deg,#60a5fa,#2563eb);color:#fff}.alert-banner--gradient.alert-banner--info .alert-banner__dismiss-button:hover{background-color:#2563eb33}.alert-banner--gradient.alert-banner--info .alert-banner__dismiss-button:focus{--focus-ring-color:#2563eb}.alert-banner--gradient.alert-banner--warning{background:linear-gradient(90deg,#fcd34d,#f97316);color:#1f2937}.alert-banner--gradient.alert-banner--warning .alert-banner__dismiss-button{color:#1f2937}.alert-banner--gradient.alert-banner--warning .alert-banner__dismiss-button:hover{background-color:#f9731633}.alert-banner--gradient.alert-banner--warning .alert-banner__dismiss-button:focus{--focus-ring-color:#f97316}.alert-banner--gradient.alert-banner--error{background:linear-gradient(90deg,#f87171,#dc2626);color:#fff}.alert-banner--gradient.alert-banner--error .alert-banner__dismiss-button:hover{background-color:#dc262633}.alert-banner--gradient.alert-banner--error .alert-banner__dismiss-button:focus{--focus-ring-color:#dc2626}.alert-banner--outline{background-color:#fff;border-width:2px}.alert-banner--outline.alert-banner--success{border-color:#22c55e;color:#15803d}.alert-banner--outline.alert-banner--success .alert-banner__dismiss-button{color:#15803d}.alert-banner--outline.alert-banner--success .alert-banner__dismiss-button:hover{background-color:#dcfce7}.alert-banner--outline.alert-banner--success .alert-banner__dismiss-button:focus{--focus-ring-color:#15803d}.alert-banner--outline.alert-banner--info{border-color:#3b82f6;color:#1d4ed8}.alert-banner--outline.alert-banner--info .alert-banner__dismiss-button{color:#1d4ed8}.alert-banner--outline.alert-banner--info .alert-banner__dismiss-button:hover{background-color:#eff6ff}.alert-banner--outline.alert-banner--info .alert-banner__dismiss-button:focus{--focus-ring-color:#1d4ed8}.alert-banner--outline.alert-banner--warning{border-color:#fbbf24;color:#ea580c}.alert-banner--outline.alert-banner--warning .alert-banner__dismiss-button{color:#ea580c}.alert-banner--outline.alert-banner--warning .alert-banner__dismiss-button:hover{background-color:#fff7ed}.alert-banner--outline.alert-banner--warning .alert-banner__dismiss-button:focus{--focus-ring-color:#ea580c}.alert-banner--outline.alert-banner--error{border-color:#ef4444;color:#b91c1c}.alert-banner--outline.alert-banner--error .alert-banner__dismiss-button{color:#b91c1c}.alert-banner--outline.alert-banner--error .alert-banner__dismiss-button:hover{background-color:#fef2f2}.alert-banner--outline.alert-banner--error .alert-banner__dismiss-button:focus{--focus-ring-color:#b91c1c}.alert-banner--card{border-width:1px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.alert-banner--card.alert-banner--success{background-color:#dcfce7;border-color:#bbf7d0;color:#166534}.alert-banner--card.alert-banner--success .alert-banner__dismiss-button{color:#166534}.alert-banner--card.alert-banner--success .alert-banner__dismiss-button:hover{background-color:#bbf7d0}.alert-banner--card.alert-banner--success .alert-banner__dismiss-button:focus{--focus-ring-color:#166534}.alert-banner--card.alert-banner--info{background-color:#eff6ff;border-color:#bfdbfe;color:#1e40af}.alert-banner--card.alert-banner--info .alert-banner__dismiss-button{color:#1e40af}.alert-banner--card.alert-banner--info .alert-banner__dismiss-button:hover{background-color:#bfdbfe}.alert-banner--card.alert-banner--info .alert-banner__dismiss-button:focus{--focus-ring-color:#1e40af}.alert-banner--card.alert-banner--warning{background-color:#fff7ed;border-color:#fed7aa;color:#9a3412}.alert-banner--card.alert-banner--warning .alert-banner__dismiss-button{color:#9a3412}.alert-banner--card.alert-banner--warning .alert-banner__dismiss-button:hover{background-color:#fed7aa}.alert-banner--card.alert-banner--warning .alert-banner__dismiss-button:focus{--focus-ring-color:#9a3412}.alert-banner--card.alert-banner--error{background-color:#fef2f2;border-color:#fecaca;color:#991b1b}.alert-banner--card.alert-banner--error .alert-banner__dismiss-button{color:#991b1b}.alert-banner--card.alert-banner--error .alert-banner__dismiss-button:hover{background-color:#fecaca}.alert-banner--card.alert-banner--error .alert-banner__dismiss-button:focus{--focus-ring-color:#991b1b}.alert-banner--critical{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background-color:#b91c1c;border-color:#7f1d1d;border-width:4px;box-shadow:0 10px 15px -3px #ef444480,0 4px 6px -2px #ef44440d;color:#fff;font-size:1.25rem;font-weight:700;padding:1rem 1.5rem}.alert-banner--critical .alert-banner__dismiss-button{color:#fff}.alert-banner--critical .alert-banner__dismiss-button:hover{background-color:#991b1b}.alert-banner--critical .alert-banner__dismiss-button:focus{--focus-ring-color:#991b1b}.alert-banner--flash{animation:bounce-once 1s ease-out forwards;background-color:#7e22ce;border-color:#581c87;border-width:2px;color:#fff}.alert-banner--flash .alert-banner__dismiss-button{color:#fff}.alert-banner--flash .alert-banner__dismiss-button:hover{background-color:#6b21a8}.alert-banner--flash .alert-banner__dismiss-button:focus{--focus-ring-color:#6b21a8}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce-once{0%,to{transform:translateY(0)}20%{transform:translateY(-.5rem)}40%{transform:translateY(0)}60%{transform:translateY(-.25rem)}80%{transform:translateY(0)}}@media (max-width:768px){.alert-banner{font-size:1rem;margin-bottom:1.5rem;padding:.75rem 1rem}.alert-banner--critical{font-size:1.125rem}}.service-category-card{background-color:var(--card-bg-color);border:1px solid var(--card-border);border-radius:8px;box-shadow:0 4px 15px var(--shadow-light);margin-bottom:25px;overflow:hidden}.service-category-card .card-header{align-items:center;background-color:var(--card-header-bg);border-bottom:1px solid var(--card-border);cursor:pointer;display:flex;justify-content:space-between;padding:20px 25px;transition:background-color .2s ease-in-out}.service-category-card .card-header:hover{background-color:#f5f5f5}.service-category-card .card-header h3{color:var(--button-primary-text);font-size:1.5rem;font-weight:700;margin:0}.service-category-card .toggle-icon{color:var(--button-primary-text);font-size:1.2rem;transition:transform .3s ease-in-out}.service-category-card .toggle-icon.open{transform:rotate(180deg)}.service-category-card .card-content{padding:10px 25px 20px}@media (max-width:768px){.service-category-card .card-header{padding:15px 20px}.service-category-card .card-header h3{font-size:1.3rem}.service-category-card .card-content{padding:10px 20px 15px}}.service-item{align-items:center;border-bottom:1px dashed #e0e2e5;border-bottom:1px dashed var(--border-color,#e0e2e5);display:flex;flex-wrap:wrap;font-size:1rem;gap:15px;justify-content:space-between;margin-bottom:10px;padding:12px 20px}.service-item:last-child{border-bottom:none;margin-bottom:0}.service-main-info{flex-grow:1;flex-wrap:wrap;gap:20px}.service-details,.service-main-info{align-items:center;display:flex;min-width:0}.service-details{flex-shrink:1;gap:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signal-type-display{align-items:center;display:flex;flex-shrink:0;margin-right:5px}.signal-type-display .signal-icon{color:var(--subtle-text-color);font-size:1em;margin-right:3px}.service-name{color:var(--text-color);flex-shrink:0;font-weight:600}.service-name-link{color:var(--link-color);text-decoration:none;transition:color .2s ease,-webkit-text-decoration .2s ease;transition:color .2s ease,text-decoration .2s ease;transition:color .2s ease,text-decoration .2s ease,-webkit-text-decoration .2s ease;white-space:nowrap}.service-name-link:hover{color:var(--link-hover-color);text-decoration:underline}.version-tag{flex-shrink:0}.service-status{align-items:center;display:flex;flex-shrink:0;font-weight:500;padding:3px 0;white-space:nowrap}.service-status .status-icon{font-size:1.1em;margin-right:6px}.service-status .status-dot{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.status-green{color:var(--status-green)}.status-green .status-dot{background-color:var(--status-green)}.status-orange{color:var(--status-orange)}.status-orange .status-dot{background-color:var(--status-orange)}.status-red{color:var(--status-red)}.status-red .status-dot{background-color:var(--status-red)}.status-gray{color:var(--status-gray)}.status-gray .status-dot{background-color:var(--status-gray)}.service-other-links{align-items:center;display:flex;flex-shrink:1;flex-wrap:wrap;gap:10px;min-width:0}.service-label-link{color:var(--link-color);cursor:pointer;font-size:.95em;font-weight:500;text-decoration:none;transition:color .2s ease,-webkit-text-decoration .2s ease;transition:color .2s ease,text-decoration .2s ease;transition:color .2s ease,text-decoration .2s ease,-webkit-text-decoration .2s ease;white-space:nowrap}.service-label-link:hover{color:var(--link-hover-color);text-decoration:underline}.service-label-link.no-link-url{cursor:default;opacity:.7}.service-label-link.no-link-url,.service-label-link.no-link-url:hover{color:var(--subtle-text-color);text-decoration:none}.service-actions{flex-wrap:wrap;gap:5px;justify-content:flex-end;margin-left:auto}.action-icon-button,.service-actions{align-items:center;display:flex;flex-shrink:0}.action-icon-button{background:none;border:none;border-radius:4px;color:var(--text-color);cursor:pointer;font-size:1.1em;justify-content:center;padding:5px;transition:color .2s ease,transform .1s ease,background-color .2s ease}.action-icon-button:hover{background-color:#0000000d;transform:scale(1.1)}.action-icon-button.start:hover{background-color:rgba(var(--status-green-rgb),.1);color:var(--status-green)}.action-icon-button.restart:hover{background-color:rgba(var(--status-orange-rgb),.1);color:var(--status-orange)}.action-icon-button.stop:hover{background-color:rgba(var(--status-red-rgb),.1);color:var(--status-red)}body.blue-dusk .action-icon-button:hover,body.dark .action-icon-button:hover,body.high-contrast .action-icon-button:hover{background-color:#ffffff14}.info-block{background-color:var(--info-block-bg);border-left:5px solid var(--primary-brand-color);border-radius:5px;color:var(--text-color);font-size:.95rem;line-height:1.5;margin-bottom:20px;padding:15px 20px}.info-block p{margin-bottom:10px}.info-block p:last-child{margin-bottom:0}.info-block ul{list-style-type:disc;margin-top:10px;padding-left:20px}.info-block ul li{margin-bottom:5px}.info-block strong{color:var(--dark-blue)}.info-block code{background-color:#e9ecef;border-radius:3px;color:#c7254e;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em;padding:2px 5px}.action-link-item{align-items:center;border-top:1px solid var(--card-border);display:flex;font-size:1rem;justify-content:space-between;margin-top:10px;padding:15px 0}.service-category-card .card-content .service-item:last-of-type+.action-link-item{border-top:none;padding-top:0}.action-label{color:var(--dark-blue);flex-grow:1;font-weight:600}.action-buttons{display:flex;gap:10px}.action-button-primary{background-color:var(--primary-blue);border-radius:5px;color:var(--white);font-size:.95em;font-weight:600;padding:8px 18px;transition:background-color .2s ease-in-out,transform .1s ease-in-out;white-space:nowrap}.action-button-primary:hover{background-color:var(--link-hover-color);text-decoration:none;transform:translateY(-2px)}.custom-text-block{background-color:#f5f5f5;border:1px dashed #ddd;border-radius:5px;font-size:.95rem;line-height:1.5;margin-bottom:10px;margin-top:10px;padding:15px}@media (max-width:768px){.action-link-item{align-items:flex-start;flex-direction:column;padding:10px 0}.action-label{margin-bottom:10px}.action-buttons{justify-content:flex-start;width:100%}.action-button-primary{padding:8px 15px;text-align:center;width:auto}}.modal-overlay{background-color:#000000b3;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;max-width:400px;padding:30px;text-align:center}.modal-content h2{color:var(--primary-color);font-size:1.5em;margin-bottom:10px;margin-top:0}.modal-content p{color:#555;margin-bottom:20px}.modal-content form{display:flex;flex-direction:column;gap:15px}.modal-content .form-group{text-align:left}.modal-content label{color:#333;display:block;font-weight:600;margin-bottom:5px}.modal-content input[type=email],.modal-content input[type=password]{border:1px solid #ddd;border-radius:5px;box-sizing:border-box;font-size:1em;padding:10px 12px;width:100%}.modal-content input[type=email]:focus,.modal-content input[type=password]:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #1cafa633;outline:none}.modal-error-message{color:var(--status-red);font-size:.9em;margin-top:10px}.modal-actions{gap:10px;margin-top:20px}.modal-actions button{border:none;border-radius:5px;cursor:pointer;font-weight:600;padding:10px 20px;transition:background-color .2s ease,transform .1s ease}.modal-actions .submit-button{background-color:var(--card-header-bg);color:#fff}.modal-actions .submit-button:hover:not(:disabled){background-color:var(--primary-brand-color);transform:translateY(-1px)}.modal-actions .submit-button:disabled{background-color:#ccc;cursor:not-allowed}.modal-actions .cancel-button{background-color:#e0e0e0;color:#333}.modal-actions .cancel-button:hover:not(:disabled){background-color:#d0d0d0;transform:translateY(-1px)}.modal-actions .cancel-button:disabled{background-color:#f0f0f0;cursor:not-allowed}.info-block-container{background-color:#f0f0f0;border:1px solid #d0d0d0;border-radius:var(--border-radius);box-shadow:0 2px 5px #0000001a;margin-bottom:20px;padding:20px}.info-block-title{color:#333;font-size:1.3rem;font-weight:600;margin-bottom:15px;margin-top:0}.info-block-content li,.info-block-content p{color:#444;line-height:1.6;margin-bottom:10px}.info-block-content ul{list-style-type:disc;margin-bottom:10px;margin-left:20px}.info-block-content li{margin-bottom:5px}.info-block-content hr{border:none;border-top:1px solid #ccc;margin:20px 0}.info-block-content .inline-link{color:#007bff;font-weight:500;text-decoration:none;transition:color .2s ease}.info-block-content .inline-link:hover{color:#0056b3;text-decoration:underline}.info-block-content strong{color:#222;font-weight:600}.blocking-overlay{align-items:center;animation:fadeIn .4s ease-out;background-color:#0006;display:flex;height:100vh;justify-content:center;left:0;pointer-events:auto;position:fixed;top:0;width:100vw;z-index:9999}.blocking-message{animation:popIn .3s ease-out;background-color:#fff;background-color:var(--info-block-bg,#fff);border-radius:8px;box-shadow:0 2px 10px #0003;color:#222;color:var(--card-header-color,#222);font-weight:700;padding:1em 2em}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.config-login-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.config-login-container{background:var(--card-bg-color);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:400px;padding:2rem;width:100%}.config-login-header{margin-bottom:2rem;text-align:center}.config-login-header h2{color:var(--text-color);font-size:1.5rem;margin:0 0 .5rem}.config-login-header p{color:var(--subtle-text-color);font-size:.9rem;margin:0}.config-login-form{gap:1.5rem}.config-login-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{font-size:.9rem}.form-group input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color);font-size:1rem;padding:.75rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{border-color:var(--primary-brand-color);box-shadow:0 0 0 3px rgba(var(--primary-brand-color-rgb),.1);outline:none}.error-message{align-items:center;background:#dc35451a;border:1px solid #dc35454d;border-radius:6px;color:#dc3545;display:flex;font-size:.9rem;gap:.5rem;padding:.75rem}.error-icon{font-size:1rem}.form-actions{margin-top:1rem}.login-button{align-items:center;background:var(--primary-brand-color);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;padding:.875rem;transition:background-color .2s ease,transform .1s ease;width:100%}.login-button:hover:not(:disabled){background:var(--primary-brand-color-hover);transform:translateY(-1px)}.login-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.loading-spinner{border:2px solid #ffffff4d;border-top-color:#fff;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.config-login-footer{margin-top:1.5rem;text-align:center}.config-login-footer p{color:var(--subtle-text-color);font-size:.8rem;margin:0}body.dark .config-login-container{background:#2d3748;border-color:#4a5568}body.dark .form-group input{background:#1a202c;border-color:#4a5568;color:#e2e8f0}body.dark .form-group input:focus{border-color:var(--primary-brand-color)}body.high-contrast .config-login-container,body.high-contrast .form-group input{background:#000;border:2px solid #fff}body.high-contrast .form-group input{color:#fff}body.high-contrast .login-button{background:#fff;border:2px solid #fff;color:#000}body.high-contrast .login-button:hover:not(:disabled){background:#f0f0f0}.config-management-console{background:var(--surface-1-bg);color:var(--text-color);min-height:100vh}.console-header{align-items:center;background:var(--card-bg-color);border-bottom:1px solid var(--border-color);box-shadow:0 2px 4px var(--box-shadow-shadow-color);display:flex;justify-content:space-between;padding:1.5rem 2rem}.header-left h1{color:var(--text-color);font-size:1.75rem;margin:0 0 .25rem}.header-left p{color:var(--subtle-text-color);font-size:.9rem;margin:0}.btn-logout{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .2s ease}.btn-logout:hover{background:#c82333}.console-tabs{background:var(--card-bg-color);border-bottom:1px solid var(--border-color);display:flex;padding:0 2rem}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:var(--subtle-text-color);cursor:pointer;font-size:.9rem;padding:1rem 1.5rem;transition:all .2s ease}.tab-button:hover{background:rgba(var(--primary-brand-color-rgb),.05);color:var(--text-color)}.tab-button.active{background:rgba(var(--primary-brand-color-rgb),.1);border-bottom-color:var(--primary-brand-color);color:var(--primary-brand-color)}.console-content{padding:2rem;position:relative}.loading-overlay{align-items:center;background:rgba(var(--surface-1-bg-rgb),.8);bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.loading-spinner{animation:spin 1s linear infinite;border-top:4px solid rgba(var(--primary-brand-color-rgb),.3);border:4px solid rgba(var(--primary-brand-color-rgb),.3);border-radius:50%;border-top-color:var(--primary-brand-color);height:40px;margin-bottom:1rem;width:40px}.tab-header{margin-bottom:2rem}.tab-header h3{color:var(--text-color);font-size:1.5rem;margin:0 0 .5rem}.tab-header p{color:var(--subtle-text-color);margin:0}.error-banner{align-items:center;background:#dc35451a;border:1px solid #dc35454d;border-radius:6px;color:#dc3545;display:flex;gap:.5rem;margin-bottom:2rem;padding:1rem}.error-icon{font-size:1.2rem}.configs-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:2rem}.config-card{background:var(--card-bg-color);border:1px solid var(--card-border);border-radius:8px;box-shadow:0 2px 4px var(--box-shadow-shadow-color);padding:1.5rem}.config-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.config-header h4{color:var(--text-color);font-size:1.1rem;margin:0}.config-actions{display:flex;gap:.5rem}.btn-delete,.btn-edit,.btn-view{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;padding:.25rem .5rem;transition:background-color .2s ease}.btn-view{background:#17a2b8;color:#fff}.btn-view:hover{background:#138496}.btn-edit{background:#ffc107;color:#212529}.btn-edit:hover{background:#e0a800}.btn-delete{background:#dc3545;color:#fff}.btn-delete:hover{background:#c82333}.config-info p{color:var(--subtle-text-color);font-size:.9rem;margin:.5rem 0}.config-info strong{color:var(--text-color)}.add-config-section{border:2px dashed var(--border-color);border-radius:8px;padding:2rem;text-align:center}.btn-add-config,.btn-add-user{background:var(--primary-brand-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s ease}.btn-add-config:hover,.btn-add-user:hover{background:var(--primary-brand-color-hover)}.audit-table,.users-table{background:var(--card-bg-color);border-radius:8px;box-shadow:0 2px 4px var(--box-shadow-shadow-color);overflow:hidden;width:100%}.audit-table table,.users-table table{border-collapse:collapse;width:100%}.audit-table td,.audit-table th,.users-table td,.users-table th{border-bottom:1px solid var(--border-color);padding:1rem;text-align:left}.audit-table th,.users-table th{background:var(--surface-2-bg);color:var(--text-color);font-weight:600}.audit-table td,.users-table td{color:var(--text-color)}.action-badge,.role-badge,.status-badge{border-radius:12px;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.role-badge.role-global_admin{background:#dc3545;color:#fff}.role-badge.role-config_admin{background:#ffc107;color:#212529}.role-badge.role-config_viewer{background:#6c757d;color:#fff}.status-badge.active{background:#28a745;color:#fff}.status-badge.inactive{background:#6c757d;color:#fff}.action-badge.action-login_success{background:#28a745;color:#fff}.action-badge.action-login_failed{background:#dc3545;color:#fff}.action-badge.action-config_update{background:#17a2b8;color:#fff}.action-badge.action-config_create{background:#28a745;color:#fff}.action-badge.action-config_delete{background:#dc3545;color:#fff}.user-actions{display:flex;gap:.5rem}.btn-delete-user,.btn-edit-user{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;padding:.25rem .5rem}.btn-edit-user{background:#ffc107;color:#212529}.btn-delete-user{background:#dc3545;color:#fff}.add-user-section{margin-top:2rem;text-align:center}.audit-table details{cursor:pointer}.audit-table summary{color:var(--primary-brand-color);font-size:.9rem}.audit-table pre{background:var(--surface-1-bg);border-radius:4px;font-size:.8rem;margin:.5rem 0 0;overflow-x:auto;padding:.5rem}@media (max-width:768px){.console-header{flex-direction:column;gap:1rem;text-align:center}.console-tabs{flex-direction:column;padding:0}.tab-button{border-bottom:none;border-left:3px solid #0000}.tab-button.active{border-bottom-color:#0000;border-left-color:var(--primary-brand-color)}.configs-grid{grid-template-columns:1fr}.config-header{flex-direction:column;gap:1rem}.audit-table,.users-table{overflow-x:auto}}body.dark .config-management-console{background:#1a202c}body.dark .audit-table,body.dark .config-card,body.dark .console-header,body.dark .console-tabs,body.dark .users-table{background:#2d3748;border-color:#4a5568}body.dark .audit-table th,body.dark .users-table th{background:#4a5568}body.dark .audit-table pre{background:#1a202c}.header-controls{align-items:center;display:flex;gap:1rem}.theme-selector{align-items:center;display:flex;gap:.5rem}.theme-selector label{color:var(--subtle-text-color);font-size:.9rem}.theme-selector select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:.9rem;padding:.25rem .5rem}.btn-help{background:#17a2b8;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .2s ease}.btn-help:hover{background:#138496}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.modal-content{background:var(--card-bg-color);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.modal-content.large{max-width:800px}.modal-header{align-items:center;background:var(--surface-2-bg);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{color:var(--text-color);margin:0}.btn-close{background:none;border:none;border-radius:4px;color:var(--subtle-text-color);cursor:pointer;font-size:1.5rem;padding:.25rem;transition:background-color .2s ease}.btn-close:hover{background:rgba(var(--text-color-rgb),.1)}.modal-body{max-height:70vh;overflow-y:auto;padding:1.5rem}.config-details{background:var(--surface-1-bg);border-radius:6px;margin-bottom:1.5rem;padding:1rem}.config-details p{margin:.5rem 0}.config-details p,.config-details strong,.json-display{color:var(--text-color)}.json-display{background:var(--surface-1-bg);border:1px solid var(--border-color);border-radius:6px;font-family:Courier New,monospace;font-size:.9rem;max-height:400px;overflow-x:auto;overflow-y:auto;padding:1rem;white-space:pre-wrap}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-color);display:block;font-weight:500;margin-bottom:.5rem}.change-description-input{font-size:1rem;padding:.75rem}.change-description-input,.json-editor{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color);width:100%}.json-editor{font-family:Courier New,monospace;font-size:.9rem;min-height:300px;padding:1rem;resize:vertical}.modal-actions{border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.btn-cancel{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.btn-cancel:hover{background:#5a6268}.btn-save{background:var(--primary-brand-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.btn-save:hover:not(:disabled){background:var(--primary-brand-color-hover)}.btn-save:disabled{cursor:not-allowed;opacity:.6}.help-content{line-height:1.6}.help-section{margin-bottom:2rem}.help-section h4{color:var(--primary-brand-color);font-size:1.1rem;margin:0 0 1rem}.help-section ul{margin:0;padding-left:1.5rem}.help-section li{margin-bottom:.5rem}.help-section li,.help-section strong{color:var(--text-color)}.btn-delete:disabled,.btn-edit:disabled,.btn-view:disabled{cursor:not-allowed;opacity:.6}body.dark .modal-content{background:#2d3748;border-color:#4a5568}body.dark .modal-header{background:#4a5568;border-color:#4a5568}body.dark .change-description-input,body.dark .json-display,body.dark .json-editor{background:#1a202c;border-color:#4a5568;color:#e2e8f0}body.dark .config-details{background:#1a202c}.success-banner{align-items:center;background:#28a7451a;border:1px solid #28a7454d;border-radius:6px;color:#28a745;display:flex;gap:.5rem;margin-bottom:2rem;padding:1rem}.success-icon{font-size:1.2rem}@media (max-width:768px){.header-controls{align-items:stretch;flex-direction:column;gap:.5rem}.theme-selector{justify-content:space-between}.modal-content{margin:1rem;width:95%}.modal-actions{flex-direction:column}}
/*# sourceMappingURL=main.7d52f325.css.map*/