:root{--bg-primary: #1A3437;--bg-secondary: #2A4A4F;--bg-tertiary: transparent;--accent-primary: #EAFD5A;--accent-secondary: #B7CEC4;--accent-hover: #D4E94A;--text-primary: #FFFFFF;--text-input: #E5E5E5;--text-secondary: #B7CEC4;--text-muted: #666666;--text-on-accent: #1A3437;--success-bg: rgba(34, 197, 94, .1);--success-text: #22C55E;--error-bg: rgba(255, 107, 107, .1);--error-text: #FF6B6B;--error-hover: rgba(255, 107, 107, .2);--hover-bg: rgba(234, 253, 90, .05);--selected-bg: rgba(234, 253, 90, .1);--focus-outline: rgba(234, 253, 90, .3);--badge-auto-bg: #244f46;--badge-auto-text: #b7cec4;--badge-custom-bg: #513c2c;--badge-custom-text: #f5d39a;--border-subtle: rgba(183, 206, 196, .2);--border-medium: rgba(183, 206, 196, .4);--border-strong: #2A4A4F;--font-family: "Clash Grotesk", sans-serif;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-xxl: 24px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.4;--line-height-relaxed: 1.5;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-xxl: 24px;--spacing-xxxl: 32px;--form-input-padding: 8px 12px;--button-padding-sm: 6px 12px;--button-padding-md: 8px 16px;--button-padding-lg: 12px 20px;--table-cell-padding: 8px 20px;--table-header-padding: 12px 20px;--card-padding: 20px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 20px;--radius-full: 50px;--border-width-thin: 1px;--border-width-medium: 2px;--shadow-sm: 0 1px 2px rgba(26, 52, 55, .06);--shadow-md: 0 2px 4px rgba(26, 52, 55, .12);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .1);--transition-fast: .15s;--transition-normal: .2s;--transition-slow: .3s;--transition-all: all var(--transition-normal) ease;--transition-colors: color var(--transition-normal) ease, background-color var(--transition-normal) ease, border-color var(--transition-normal) ease;--transition-transform: transform var(--transition-fast) ease;--table-row-height: 40px;--table-header-height: 44px;--form-input-height: 36px;--form-input-border: var(--border-width-thin) solid var(--border-subtle);--form-input-border-focus: var(--border-width-thin) solid var(--accent-primary);--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-color: var(--focus-outline);--focus-ring-blur: 0px;--button-height-sm: 32px;--button-height-md: 36px;--button-height-lg: 44px;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 900;--z-modal: 1000;--z-tooltip: 1100}*{font-family:var(--font-family)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-primary{color:var(--text-primary)}.text-input{color:var(--text-input)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-accent{color:var(--accent-primary)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-hover{background-color:var(--hover-bg)}.bg-selected{background-color:var(--selected-bg)}.focus-ring{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.focus-ring:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.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)}.text-xxl{font-size:var(--font-size-xxl)}.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)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-xxl{padding:var(--spacing-xxl)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.m-xxl{margin:var(--spacing-xxl)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.transition-all{transition:var(--transition-all)}.transition-colors{transition:var(--transition-colors)}.transition-transform{transition:var(--transition-transform)}.zone-creator-container{display:flex;width:100%;max-width:1200px;margin:0 auto;gap:var(--spacing-xl);padding:var(--spacing-xl)}.zone-creator-main{flex:1;min-width:0}.zone-creator{background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xxl)}.zone-creator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xxl);padding-bottom:var(--spacing-lg);border-bottom:var(--border-width-thin) solid var(--border-subtle)}.validation-badge{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-xl);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.validation-badge.success{background:var(--success-text);color:#fff}.validation-badge.error{background:var(--error-text);color:#fff}.filename-input{margin-bottom:var(--spacing-xxl);padding:var(--spacing-lg);background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md)}.filename-input label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.filename-field{width:100%;padding:var(--form-input-padding);border:var(--form-input-border);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-input);font-size:var(--font-size-base);font-family:var(--font-family);transition:var(--transition-colors)}.filename-field:focus{outline:none;border:var(--form-input-border-focus);box-shadow:0 0 0 2px var(--focus-outline)}.add-zone-form{margin-bottom:var(--spacing-xxl);padding:var(--spacing-lg);background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md)}.add-zone-form h3{margin-top:0;margin-bottom:var(--spacing-lg);color:var(--text-primary);font-size:var(--font-size-lg)}.add-zone-form>div{margin-bottom:var(--spacing-lg)}.add-zone-form label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.add-zone-form input,.add-zone-form select{width:100%;padding:var(--form-input-padding);border:var(--form-input-border);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-input);font-size:var(--font-size-base);font-family:var(--font-family);transition:var(--transition-colors)}.add-zone-form input:focus,.add-zone-form select:focus{outline:none;border:var(--form-input-border-focus);box-shadow:0 0 0 2px var(--focus-outline)}.zones-list{margin-bottom:var(--spacing-xxl);padding:var(--spacing-lg);background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md)}.zones-list h3{margin-top:0;margin-bottom:var(--spacing-lg);color:var(--text-primary);font-size:var(--font-size-lg)}.zones-list ul{list-style:none;padding:0;margin:0}.zones-list li{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--border-subtle);transition:var(--transition-colors)}.zones-list li:hover{background:var(--hover-bg)}.zones-list li:last-child{border-bottom:none}.zones-list button{padding:var(--button-padding-sm);background:var(--bg-secondary);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-colors)}.zones-list button:hover{background:var(--hover-bg);border-color:var(--border-medium)}.actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.actions button{padding:var(--button-padding-md);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-all)}.actions button.success{background:var(--accent-primary);color:var(--bg-primary)}.actions button.error{background:var(--error-text);color:#fff}.save-success,.save-error{padding:var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm)}.save-success{background:var(--success-text);color:#fff}.save-error{background:var(--error-text);color:#fff}.validation-results{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md)}.validation-results h3{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-primary)}.validation-results .success{color:var(--success-text)}.validation-results .errors{color:var(--error-text)}.validation-results ul{list-style:none;padding:0;margin:0}.validation-results li{padding:var(--spacing-xs) 0;color:var(--text-secondary)}.saved-models-sidebar{width:300px;flex-shrink:0}.saved-models-list{background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xxl);max-height:600px;overflow-y:auto}.saved-models-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--border-subtle)}.saved-models-header h3{margin:0;color:var(--text-primary)}.saved-models-header button{padding:var(--button-padding-sm);background:var(--accent-primary);color:var(--bg-primary);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-transform)}.error-message{color:var(--error-text);font-size:var(--font-size-sm);margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--error-bg);border-radius:var(--radius-sm)}.models-actions{margin-bottom:var(--spacing-lg)}.new-model-btn{width:100%;padding:var(--button-padding-md);background:var(--accent-primary);color:var(--bg-primary);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-all)}.new-model-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.models-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.model-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);transition:var(--transition-colors)}.model-item:hover{background:var(--hover-bg)}.model-name{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:var(--font-weight-medium)}.load-model-btn{padding:var(--button-padding-sm);background:var(--bg-secondary);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-colors)}.load-model-btn:hover{background:var(--hover-bg);border-color:var(--border-medium)}.load-model-btn:disabled{opacity:.6;cursor:not-allowed}@media (prefers-color-scheme: light){:root{color:var(--text-primary);background-color:var(--bg-primary)}}.standard-input-container{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.standard-input-label{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.standard-input{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-input);background:var(--bg-tertiary);border:var(--form-input-border);border-radius:var(--radius-sm);padding:var(--form-input-padding);height:var(--form-input-height);transition:var(--transition-all);box-sizing:border-box;width:100%}.standard-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.standard-input:hover:not(:focus){border-color:var(--border-medium)}.standard-input:disabled{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed;border-color:var(--border-subtle)}.standard-input::placeholder{color:var(--text-muted)}.standard-input-sm{height:32px;font-size:var(--font-size-sm);padding:6px 10px}.standard-input-md{height:var(--form-input-height);font-size:var(--font-size-base);padding:var(--form-input-padding)}.standard-input-lg{height:44px;font-size:var(--font-size-lg);padding:10px 16px}.standard-input-ghost{background:transparent;border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-lg)}.standard-input-ghost:hover:not(:focus){border-color:var(--border-medium);background:var(--hover-bg)}.standard-input-ghost:focus{outline:none;border-color:var(--accent-primary);background:var(--hover-bg);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.standard-input-error{border-color:var(--error-text)}.standard-input-error:focus{border-color:var(--error-text);box-shadow:0 0 0 var(--focus-ring-width) var(--error-bg)}.standard-input-error-text{font-size:var(--font-size-sm);color:var(--error-text);font-weight:var(--font-weight-medium);margin-top:var(--spacing-xs)}.standard-input-helper-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-xs)}@media (max-width: 768px){.standard-input-label{font-size:var(--font-size-sm)}.standard-input{font-size:var(--font-size-sm);padding:var(--spacing-sm)}.standard-input-sm{height:28px;font-size:var(--font-size-sm);padding:4px 8px}.standard-input-md{height:32px;font-size:var(--font-size-sm);padding:var(--spacing-sm)}.standard-input-lg{height:36px;font-size:var(--font-size-base);padding:8px 12px}.standard-input-ghost{padding:var(--spacing-sm) var(--spacing-md)}}@media (prefers-contrast: high){.standard-input{border-color:var(--border-strong)}.standard-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary)}}.standard-dropdown-container{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.standard-dropdown-label{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.standard-dropdown{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--text-input);background-color:var(--bg-tertiary);border:var(--form-input-border);border-radius:var(--radius-sm);padding:var(--form-input-padding);height:var(--form-input-height);transition:var(--transition-all);box-sizing:border-box;width:100%;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B7CEC4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;padding-right:var(--spacing-xxxl)}.standard-dropdown:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.standard-dropdown:hover:not(:focus):not(:disabled){border-color:var(--border-medium)}.standard-dropdown:disabled{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed;border-color:var(--border-subtle);opacity:.6}.standard-dropdown::placeholder{color:var(--text-muted)}.standard-dropdown-ghost{background:transparent;border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-lg);padding-right:var(--spacing-xxxl)}.standard-dropdown-ghost:hover:not(:focus):not(:disabled){border-color:var(--border-medium);background:var(--hover-bg)}.standard-dropdown-ghost:focus{border-color:var(--accent-primary);background:var(--hover-bg);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.standard-dropdown-sm{height:32px;font-size:var(--font-size-sm);padding:6px 10px;padding-right:var(--spacing-xxl)}.standard-dropdown-md{height:var(--form-input-height);font-size:var(--font-size-base);padding:var(--form-input-padding);padding-right:var(--spacing-xxxl)}.standard-dropdown-lg{height:44px;font-size:var(--font-size-lg);padding:10px 16px;padding-right:var(--spacing-xxxl)}.standard-dropdown-error{border-color:var(--error-text)}.standard-dropdown-error:focus{border-color:var(--error-text);box-shadow:0 0 0 var(--focus-ring-width) var(--error-bg)}.standard-dropdown-error-text{font-size:var(--font-size-sm);color:var(--error-text);font-weight:var(--font-weight-medium);margin-top:var(--spacing-xs)}.standard-dropdown-helper-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-xs)}.standard-dropdown option{background-color:var(--bg-primary);color:var(--text-input);padding:var(--spacing-sm)}.standard-dropdown option:disabled{color:var(--text-muted);font-style:italic}@media (prefers-contrast: high){.standard-dropdown,.standard-dropdown-ghost{border-width:2px}}.btn{display:inline-flex;align-items:center;justify-content:center;border:none!important;border-radius:var(--radius-lg);cursor:pointer;font-family:inherit;font-weight:500;transition:all .2s ease;text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box;background:none;padding:0;margin:0;outline:none}.btn:focus{outline:none;box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-nav{padding:.6rem 1.4rem;font-size:1.1rem;font-weight:600;min-height:44px;border-radius:var(--radius-lg)}.btn-standard{padding:.75rem 1.5rem;font-size:1rem;font-weight:500;min-height:44px;border-radius:var(--radius-lg)}.btn-yellow{background:var(--accent-primary)!important;color:var(--text-on-accent)!important;box-shadow:0 1px 2px #1a34370f}.btn-yellow:hover:not(:disabled){background:var(--accent-hover)!important;transform:translateY(-1px);box-shadow:0 2px 4px #1a34371f}.btn-yellow:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #1a34370f}.btn-grey{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border:1px solid var(--border-subtle)}.btn-grey:hover:not(:disabled){background:var(--hover-bg)!important;border-color:var(--border-medium);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-grey:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-ghost{background:transparent!important;color:var(--text-primary)!important;border:1px solid var(--border-subtle)}.btn-ghost:hover:not(:disabled){background:var(--hover-bg)!important;border-color:var(--border-medium);transform:translateY(-1px);box-shadow:0 2px 4px #1a34371a}.btn-ghost:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-danger{background:var(--error-bg)!important;color:var(--error-text)!important;border:none!important}.btn-danger:focus{outline:none;box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.btn-danger:hover:not(:disabled){background:var(--error-hover)!important;border-color:var(--error-hover);transform:translateY(-1px);box-shadow:0 2px 4px #dc354533}.btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-yellow.success{background:var(--success-bg)!important;color:var(--success-text)!important}.btn-yellow.error{background:var(--error-bg)!important;color:var(--error-text)!important}.btn-icon{gap:.5rem}.btn-icon-only{padding:.5rem;min-width:38px;width:38px;height:38px}.btn-nav.btn-icon-only{min-width:44px;width:44px;height:44px}.btn-full{width:100%}@media (max-width: 768px){.btn-nav{padding:.5rem 1.2rem;font-size:1rem;min-height:40px}.btn-standard{padding:.4rem .8rem;font-size:.8rem;min-height:36px}.btn-icon-only{min-width:36px;width:36px;height:36px}.btn-nav.btn-icon-only{min-width:40px;width:40px;height:40px}}@media (prefers-contrast: high){.btn-yellow,.btn-grey{border:1px solid var(--bg-primary)}}.global-elements-container{margin-top:24px;padding:16px;background:var(--bg-tertiary);border:1px solid var(--border-medium);border-radius:var(--radius-md);box-shadow:0 2px 4px #0000001a}.global-elements-header{background:var(--bg-primary)!important;color:var(--text-primary)!important}.global-elements-header h3{margin:0;color:var(--text-primary);font-size:16px;font-weight:600;border-bottom:2px solid var(--border-medium);padding-bottom:8px}.global-elements-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.global-element-node{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;cursor:pointer}.global-element-node:hover{background:var(--hover-bg);border-color:var(--border-medium)}.global-element-node.selected{background:var(--selected-bg);border-color:var(--border-medium);box-shadow:0 2px 4px #0000001a}.global-element-node.placeholder{border:1.5px dashed var(--border-medium);background:var(--bg-tertiary);opacity:.7}.global-element-node.placeholder:hover{border-color:var(--accent-primary);background:var(--hover-bg);opacity:1}.global-element-node-content{flex:1;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.global-element-info{flex:1}.global-element-name{font-weight:500;color:var(--text-primary);margin-bottom:4px;display:flex;align-items:center;gap:8px}.global-element-details{font-size:12px;color:var(--text-secondary);display:flex;gap:12px}.global-element-type{font-weight:500;color:var(--text-secondary)}.global-element-properties{color:var(--text-secondary)}.global-element-actions{display:flex;gap:8px;margin-left:12px}.global-element-actions .action-button{background:none;border:none;padding:.375rem;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-secondary);width:28px;height:28px;min-width:28px;min-height:28px}.global-element-actions .action-button:hover{background:var(--hover-bg);color:var(--text-primary)}.global-element-actions .action-button:focus{outline:2px solid var(--focus-outline);outline-offset:2px}.global-element-actions .action-button.duplicate:hover{background:var(--hover-bg);color:var(--accent-primary)}.global-element-actions .action-button.delete:hover{background:var(--error-bg);color:var(--error-text)}.create-global-element-section{padding-top:12px;border-top:1px solid var(--border-subtle)}.create-global-element-section select{width:100%;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-input);font-size:14px;transition:border-color .2s ease}.create-global-element-section select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-outline)}.create-global-element-section select:hover{border-color:var(--border-medium)}.config-card-actions{display:flex;align-items:center;gap:2px;margin-left:8px}.zone-group{background:transparent!important}.element-node{background:var(--bg-tertiary)!important}.element-node:hover{background:var(--hover-bg)!important}.element-node-content{display:flex;justify-content:space-between;align-items:center;width:100%}.global-objects-section{margin-top:24px;padding-top:16px;border-top:1px solid var(--border-subtle)}.global-objects-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.global-objects-list{display:flex;flex-direction:column;gap:4px}.create-buttons{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle)}.create-button{display:flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--border-subtle);background:var(--bg-tertiary);color:var(--text-primary);border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease}.create-button:hover{background:var(--hover-bg);border-color:var(--accent-primary)}.create-button:active{background:var(--selected-bg)}.placeholder-element{border:2px dashed var(--border-subtle);background:var(--bg-tertiary);opacity:.7}.placeholder-element:hover{border-color:var(--accent-primary);background:var(--hover-bg);opacity:1}.window-shading-child{border-left:3px solid var(--border-subtle);background:var(--bg-tertiary);margin-left:8px}.window-shading-child.selected{border-left-color:var(--accent-primary);background:var(--selected-bg)}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-text{font-size:14px;line-height:1.5}.empty-zone{padding:16px;text-align:center;color:var(--text-secondary);font-style:italic;font-size:14px}.empty-zone p{margin-bottom:12px;color:var(--text-secondary)}@media (max-width: 768px){.action-button{padding:.375rem}}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:14px;font-size:1rem;font-weight:700;line-height:1;white-space:nowrap;background:#eee;color:#222;transition:all .2s}.badge-count{background:#eafd5a;color:#1a3437}.badge-permutation{background:#e2e8f0;color:#4a5568}.badge-status{background:#f7fafc;color:#2d3748}.badge-count:hover{background:#d4e94a;transform:translateY(-1px)}.badge-validation{width:16px;height:16px;border-radius:50%;padding:0;border:2px solid transparent}.badge-validation.valid{background-color:#e8f5e8;border-color:#2e7d32}.badge-validation.valid span{color:#2e7d32}.badge-validation.partial{background-color:#fff3e0;border-color:#f57c00}.badge-validation.partial span{color:#f57c00}.badge-validation.invalid{background-color:#ffebee;border-color:#dc3545}.badge-validation.invalid span{color:#dc3545}.badge-validation.checking{background-color:#f5f5f5;border-color:#6c757d}.badge-validation.checking span{color:#6c757d}.badge-parameter{background:#f7fafc;color:#2d3748;border:1px solid #e2e8f0;min-width:18px;height:18px;padding:2px 4px;font-size:10px;font-weight:600}.badge-parameter:hover{background:#edf2f7;border-color:#cbd5e0}.badge-tab{background:#eafd5a;color:#1a3437;min-width:20px;height:20px;padding:2px 6px;font-weight:700}.badge-tab:hover{background:#d4e94a}.badge-progress{background:#e3f2fd;color:#1976d2;padding:2px 6px}.badge-progress.completed{background:#e8f5e8;color:#2e7d32}.badge-progress.error{background:#ffebee;color:#d32f2f}.badge span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-weight:700;font-size:10px;line-height:1}.badge-with-icon{gap:4px}.badge-with-icon svg{width:12px;height:12px}@media (max-width: 768px){.badge{font-size:11px;padding:1px 4px}.badge-count,.badge-tab{min-width:18px;height:18px}.badge-validation{width:14px;height:14px}}.badge-update{animation:badgePulse .3s ease-in-out}@keyframes badgePulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.badge:focus{outline:2px solid #007acc;outline-offset:2px}@media (prefers-contrast: high){.badge{border:1px solid currentColor}.badge-validation{border-width:2px}}.badge-required{background:#ffebee;color:#d32f2f;border:1px solid #ffcdd2}.config-card{display:flex;align-items:flex-start;background:var(--bg-tertiary)!important;border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md)!important;padding:var(--spacing-md)!important;margin-bottom:var(--spacing-sm)!important;transition:var(--transition-all);position:relative;box-shadow:var(--shadow-sm);max-width:100%;width:100%;box-sizing:border-box;overflow-x:hidden}.config-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-1px)}.config-card.selected{border-color:var(--accent-primary);background:var(--selected-bg);box-shadow:var(--shadow-lg);padding:var(--spacing-md)!important}.config-card.completed{border-color:#28a745;background:#28a7451a}.config-card.error{border-color:#dc3545;background:#dc35451a}.config-card.running{border-color:var(--accent-primary);background:var(--hover-bg)}.config-card-checkbox-container{display:flex;flex-direction:column;align-items:center;margin-right:var(--spacing-md);margin-top:2px}.config-card-checkbox{margin-bottom:4px;height:32px;display:flex;align-items:center;justify-content:center}.config-card-checkbox input[type=checkbox]{display:none}.config-card-checkbox label{display:block;width:24px;height:24px;border:var(--border-width-medium) solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;position:relative;transition:var(--transition-all)}.config-card-checkbox input[type=checkbox]:checked+label{background:var(--accent-primary);border-color:var(--accent-primary)}.config-card-checkbox input[type=checkbox]:checked+label:after{content:"";position:absolute;left:7px;top:3px;width:6px;height:10px;border:solid var(--bg-primary);border-width:0 2px 2px 0;transform:rotate(45deg)}.config-card-content{flex:1;min-width:0}.config-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding:0}.config-card-title{flex:1;min-width:0;max-width:200px}.config-filename{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);color:var(--text-primary);display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;cursor:pointer;transition:var(--transition-all);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:var(--border-width-thin) solid transparent;background:transparent;height:32px;line-height:1;box-sizing:border-box;min-height:32px}input.config-filename{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:var(--border-width-thin) solid transparent;background:transparent;padding:var(--spacing-sm) var(--spacing-md);margin:0;height:32px;line-height:1;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);box-sizing:border-box;outline:none;display:flex;align-items:center;min-height:32px}.config-filename:focus,.config-filename:active{outline:none;border-color:var(--accent-primary);background:var(--hover-bg);box-shadow:0 0 0 2px var(--focus-outline)}.config-filename:hover{background:var(--hover-bg);border-color:var(--border-medium);overflow-x:auto}.rename-input{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-tertiary);border:var(--border-width-medium) solid var(--accent-primary);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);width:100%;max-width:200px;height:32px;line-height:1;outline:none;box-shadow:0 0 0 3px var(--focus-outline);box-sizing:border-box;display:flex;align-items:center;min-height:32px}.rename-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--focus-outline)}.config-card-meta{display:none}.config-card-status{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);border:var(--border-width-thin) solid var(--border-subtle)}.status-icon{flex-shrink:0}.status-icon svg{width:12px;height:12px}.config-card.running .status-icon{color:var(--accent-primary)}.config-card.completed .status-icon{color:#28a745}.config-card.error .status-icon{color:#dc3545}.status-content{flex:1;min-width:0}.status-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.progress-bar{width:100%;height:6px;background:var(--bg-secondary);border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;background:var(--accent-primary);transition:width .3s ease}.validation-error-summary{margin-top:var(--spacing-sm)}.validation-error-bar{width:100%;height:8px;background:var(--bg-secondary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs);border:var(--border-width-thin) solid #dc3545}.validation-error-text{font-size:var(--font-size-sm);color:#dc3545;font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.validation-partial-summary{margin-top:var(--spacing-sm)}.validation-partial-bar{width:100%;height:8px;background:var(--bg-secondary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs);border:var(--border-width-thin) solid #ffc107}.validation-partial-text{font-size:var(--font-size-sm);color:#ffc107;font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.validation-invalid-summary{margin-top:var(--spacing-sm)}.validation-invalid-bar{width:100%;height:8px;background:var(--bg-secondary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs);border:var(--border-width-thin) solid #dc3545}.validation-invalid-text{font-size:var(--font-size-sm);color:#dc3545;font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.config-card-error{color:#dc3545;font-size:var(--font-size-sm);margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:#dc35451a;border-radius:var(--radius-sm)}.config-card.completed .config-card-status{background:#28a7451a;border-color:#28a745}.config-card.error .config-card-status{background:#dc35451a;border-color:#dc3545}.scenarios-container{margin-top:var(--spacing-md)}.scenarios-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.scenarios-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin:0}.config-card-scenarios{max-height:200px;overflow-y:auto;border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-secondary)}.config-card-scenarios::-webkit-scrollbar{width:6px}.config-card-scenarios::-webkit-scrollbar-track{background:var(--bg-secondary)}.config-card-scenarios::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-sm)}.config-card:hover .config-card-scenarios::-webkit-scrollbar-thumb{background:var(--accent-secondary)}.scenario-preview{padding:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--border-subtle);transition:var(--transition-colors)}.scenario-preview:last-child{border-bottom:none}.scenario-preview:hover{background:var(--hover-bg)}.scenario-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xs)}.scenario-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);margin:0;flex:1;min-width:0}.scenario-badges{display:flex;gap:var(--spacing-xs);flex-shrink:0;margin-left:var(--spacing-sm)}.scenario-toggle-button{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:var(--transition-colors);color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.scenario-toggle-button:hover{background:var(--hover-bg);color:var(--text-primary)}.scenario-toggle-button:focus{outline:var(--border-width-medium) solid var(--focus-outline);outline-offset:2px}.scenario-parameters{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:200px;transform:translateY(0)}}.parameter-tag{display:inline-block;background:var(--bg-tertiary);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);border:var(--border-width-thin) solid var(--border-subtle);transition:var(--transition-colors)}.parameter-tag:hover{background:var(--hover-bg);border-color:var(--border-medium)}.parameter-tag strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.scenario-progress{margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.scenario-progress-bar{width:100%;height:4px;background:var(--bg-secondary);border-radius:var(--radius-sm);overflow:hidden;margin-top:var(--spacing-xs)}.scenario-progress-fill{height:100%;background:var(--accent-primary);transition:width .3s ease}.config-card-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm);align-items:center}.action-button.load:hover{background:var(--hover-bg);color:var(--accent-primary)}.action-button.rename:hover{background:var(--hover-bg);color:var(--accent-secondary)}.delete-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:modalFadeIn .2s ease-out}.delete-confirm-modal{background:var(--bg-primary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-xl);max-width:400px;width:90%;animation:modalSlideIn .2s ease-out}.delete-confirm-content{text-align:center}.delete-confirm-content h3{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.delete-confirm-content p{margin:0 0 var(--spacing-lg) 0;color:var(--text-secondary);font-size:var(--font-size-base)}.delete-warning{color:#dc3545;font-weight:var(--font-weight-medium)}.delete-confirm-actions{display:flex;gap:var(--spacing-md);justify-content:center}.cancel-button{background:var(--bg-tertiary);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-subtle);padding:.75rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;font-weight:500;min-height:44px;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.cancel-button:hover{background:var(--hover-bg);border-color:var(--border-medium);transform:translateY(-1px);box-shadow:0 2px 4px #1a34371a}.delete-button{background:#dc3545;color:#fff;border:1px solid #dc3545;padding:.75rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;font-weight:500;min-height:44px;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.delete-button:hover{background:#c82333;border-color:#c82333;transform:translateY(-1px);box-shadow:0 2px 4px #dc354533}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.config-card{padding:var(--spacing-sm)!important;margin-bottom:var(--spacing-xs)!important}.config-card-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.config-card-meta{display:flex;align-items:center;gap:var(--spacing-sm);order:-1}.config-card-actions{flex-direction:column;gap:var(--spacing-xs)}.action-button{width:24px;height:24px;min-width:24px;min-height:24px;padding:.25rem}.scenario-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.scenario-name{margin-bottom:var(--spacing-xs)}.scenario-badges{margin-left:0}.scenario-parameters{gap:var(--spacing-xs)}.parameter-tag{font-size:var(--font-size-sm);padding:var(--spacing-xs)}}.section-actions button:focus,.action-button:focus{outline:var(--border-width-medium) solid var(--focus-outline);outline-offset:2px}@media (prefers-contrast: high){.config-card,.section-actions button,.action-button{border-color:var(--border-strong)}}.tooltip-container{position:relative;display:inline-block}.tooltip{position:absolute;z-index:9999;background:#1a3437;color:#b7cec4;border:1px solid #EAFD5A;border-radius:8px;padding:12px;font-size:12px;line-height:1.4;box-shadow:0 4px 12px #0000004d;min-width:220px;max-width:400px;word-wrap:break-word;pointer-events:none}.tooltip-fixed{position:fixed}.tooltip:before{content:"";position:absolute;width:0;height:0;border:6px solid transparent}.tooltip-bottom:before{top:-12px;left:50%;transform:translate(-50%);border-bottom-color:#eafd5a}.tooltip-top:before{bottom:-12px;left:50%;transform:translate(-50%);border-top-color:#eafd5a}.tooltip-left:before{right:-12px;top:50%;transform:translateY(-50%);border-left-color:#eafd5a}.tooltip-right:before{left:-12px;top:50%;transform:translateY(-50%);border-right-color:#eafd5a}.tooltip-content{position:relative}.tooltip-direct-content{color:#b7cec4;font-size:12px;line-height:1.4;word-wrap:break-word;white-space:pre-wrap}.tooltip-loading{display:flex;align-items:center;gap:8px;color:#b7cec4;font-style:italic}.tooltip-spinner{width:12px;height:12px;border:2px solid #B7CEC4;border-top:2px solid #EAFD5A;border-radius:50%;animation:spin 1s linear infinite}.tooltip-error{color:#ff6b6b;font-style:italic}.tooltip-markdown{color:#b7cec4}.tooltip-markdown h1,.tooltip-markdown h2,.tooltip-markdown h3,.tooltip-markdown h4,.tooltip-markdown h5,.tooltip-markdown h6{color:#eafd5a;margin:0 0 8px;font-size:14px;font-weight:600}.tooltip-markdown h1{font-size:16px}.tooltip-markdown h2{font-size:14px}.tooltip-markdown h3,.tooltip-markdown h4,.tooltip-markdown h5,.tooltip-markdown h6{font-size:12px}.tooltip-markdown p{margin:0 0 8px}.tooltip-markdown p:last-child{margin-bottom:0}.tooltip-markdown ul,.tooltip-markdown ol{margin:8px 0;padding-left:20px}.tooltip-markdown li{margin:4px 0}.tooltip-markdown strong,.tooltip-markdown b{color:#eafd5a;font-weight:600}.tooltip-markdown em,.tooltip-markdown i{font-style:italic}.tooltip-markdown code{background:#eafd5a1a;color:#eafd5a;padding:2px 4px;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px}.tooltip-markdown pre{background:#1a3437cc;border:1px solid #EAFD5A;border-radius:4px;padding:8px;margin:8px 0;overflow-x:auto}.tooltip-markdown pre code{background:none;padding:0;color:#b7cec4}.tooltip-markdown blockquote{border-left:3px solid #EAFD5A;margin:8px 0;padding-left:12px;color:#b7cec4;font-style:italic}.tooltip-markdown table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}.tooltip-markdown th,.tooltip-markdown td{border:1px solid #EAFD5A;padding:4px 6px;text-align:left}.tooltip-markdown th{background:#eafd5a1a;color:#eafd5a;font-weight:600}.tooltip-markdown td{color:#b7cec4}.tooltip-container:hover{cursor:pointer}.tooltip-container *{pointer-events:auto}.tooltip *{pointer-events:none}.tab-button .tab-label{flex-shrink:0}.tab-button .badge-tab{flex-shrink:0;margin-left:auto}.tab-button .badge{background:var(--accent-primary);color:var(--bg-primary);border-radius:var(--radius-full);padding:2px 6px;font-size:12px;font-weight:600;min-width:20px;text-align:center;line-height:1}.tab-button .badge-count{margin-left:.5rem}@media (max-width: 768px){.tab-button .badge-count{min-width:18px;height:18px;font-size:11px}}.tab-container{display:flex;gap:.5rem;margin-bottom:.5rem;border-bottom:none;overflow-x:auto;overflow-y:hidden;min-height:56px;align-items:flex-end;margin-left:-4px;scrollbar-width:thin;scrollbar-color:#2A4A4F #1A3437}.tab-container::-webkit-scrollbar{height:6px}.tab-container::-webkit-scrollbar-track{background:#1a3437}.tab-container::-webkit-scrollbar-thumb{background:#2a4a4f;border-radius:3px}.tab-container::-webkit-scrollbar-thumb:hover{background:#3a5a5f}.tab-button-base{display:flex;align-items:center;justify-content:center;gap:6px;background:transparent;color:var(--text-primary);border:2px solid var(--border-subtle);border-radius:6px;padding:8px 16px;height:44px;min-width:100px;max-width:200px;font-size:14px;font-weight:500;margin-right:8px;box-shadow:none;position:relative;transition:all .2s ease;cursor:pointer;white-space:nowrap;box-sizing:border-box;flex-shrink:0}.tab-button-base:hover{background:var(--hover-bg);border-color:var(--border-medium)}.tab-button-base.active{background:transparent;border-color:var(--accent-primary);border-width:3px;color:var(--text-primary);font-weight:600}.tab-button-base:focus{outline:2px solid var(--focus-outline);outline-offset:-2px}.tab-content{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.tab-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px;flex-shrink:1}.tab-actions{display:flex;gap:.25rem;align-items:center;margin-left:.5rem}.tab-action-button{background:none;border:none;padding:.375rem;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-secondary);width:28px;height:28px;min-width:28px;min-height:28px}.tab-action-button:hover{background:var(--hover-bg);color:var(--text-primary)}.tab-action-button:focus{outline:2px solid var(--focus-outline);outline-offset:2px}.tab-action-button.delete:hover{background:var(--error-bg);color:var(--error-text)}.tab-action-button.duplicate:hover{background:var(--hover-bg);color:var(--accent-primary)}.tab-button-base .badge-count{margin-left:.5rem}.scenario-tabs.tab-container{padding-bottom:.75rem;padding-top:1rem}@media (max-width: 768px){.tab-button-base{padding:6px 12px;font-size:13px;min-width:70px;max-width:140px;height:40px}.tab-name{max-width:80px;font-size:12px}.tab-action-button{width:24px;height:24px;min-width:24px;min-height:24px;padding:.25rem}}@media (prefers-contrast: high){.tab-button-base{border:2px solid var(--border-strong)}.tab-button-base.active{border-color:var(--accent-primary);border-width:3px}}.multi-metric-tabs.tab-container{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#1A3437 #f5f5f5;padding-bottom:4px;flex-shrink:0;gap:4px}.multi-metric-tabs.tab-container::-webkit-scrollbar-track{background:#f5f5f5;border-radius:3px}.multi-metric-tabs.tab-container::-webkit-scrollbar-thumb{background:#1a3437;border-radius:3px}.multi-metric-tabs.tab-container::-webkit-scrollbar-thumb:hover{background:#0a2a2d}.multi-metric-tabs .tab-button-base{min-width:80px;max-width:160px;flex-shrink:0}.multi-metric-tabs .tab-name{max-width:100px}.tab-navigation{margin-bottom:1rem;border-bottom:none!important}.tab-list{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;border-bottom:none!important}.tab-list::-webkit-scrollbar{display:none}@media (max-width: 768px){.tab-navigation{margin-bottom:.75rem}}.simulations-panel{display:flex;flex-direction:column;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--spacing-sm);overflow:hidden;height:100%;min-height:0}.run-button-container{flex-shrink:0;margin-bottom:0;position:relative;z-index:10}.simulations-panel .tab-navigation{flex-shrink:0;margin-bottom:var(--spacing-md);position:relative;z-index:10}.config-cards-container{flex:1;overflow:visible;min-height:0;height:auto!important;max-height:none!important;margin-bottom:0;scroll-behavior:smooth;padding-right:2px}.panel-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--border-subtle)}.panel-header h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.loading-configs{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:var(--spacing-xl);color:var(--text-muted);text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-subtle);border-top:4px solid var(--accent-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--spacing-lg)}.configs-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:var(--spacing-xl);color:#d32f2f;text-align:center}.configs-error button{margin-top:var(--spacing-lg);background:var(--accent-primary);color:var(--bg-primary);border:none;padding:var(--button-padding-md);border-radius:var(--radius-sm);cursor:pointer;font-weight:var(--font-weight-medium);transition:var(--transition-all)}.configs-error button:hover{background:#d4e94a;transform:translateY(-1px)}.empty-configs{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:var(--spacing-xl);color:var(--text-muted);text-align:center}.empty-configs-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm);opacity:.5}.empty-configs-text{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-sm);color:var(--text-primary)}.empty-configs-subtext{font-size:var(--font-size-sm);opacity:.7;max-width:300px;line-height:var(--line-height-normal)}.section-actions{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--border-subtle)}.section-actions button{background:var(--bg-tertiary);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-subtle);padding:var(--button-padding-sm);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:var(--transition-all)}.section-actions button:hover:not(:disabled){background:var(--hover-bg);border-color:var(--border-medium);transform:translateY(-1px)}.section-actions button:disabled{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed;transform:none}.config-cards-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.config-cards-container::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-sm)}.config-cards-container::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-sm)}@media (max-width: 768px){.simulations-panel{padding:var(--spacing-xs)}.run-button-container{margin-bottom:var(--spacing-xs)}.simulations-panel .tab-navigation{margin-bottom:var(--spacing-sm)}.panel-header h2{font-size:var(--font-size-base)}.section-actions{flex-direction:column;gap:var(--spacing-xs)}.section-actions button{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.loading-configs,.configs-error,.empty-configs{min-height:100px;padding:var(--spacing-lg)}.empty-configs-icon{font-size:2rem}.empty-configs-text,.empty-configs-subtext{font-size:var(--font-size-sm)}}.config-cards-container{overflow-y:auto;overflow-x:hidden}.config-cards-container.loading{overflow:hidden}.section-actions button:focus,.configs-error button:focus{outline:var(--border-width-medium) solid var(--focus-outline);outline-offset:2px}@media (prefers-contrast: high){.simulations-panel{border:var(--border-width-thin) solid var(--border-strong)}.section-actions button,.configs-error button{border-color:var(--border-strong)}}.simulations-panel .standard-card-content{padding:0;overflow:visible}@media (max-width: 480px){.simulations-panel{padding:var(--spacing-xs)}.run-button-container{margin-bottom:var(--spacing-xs)}.config-cards-container{gap:var(--spacing-xs)}}} .batch-config-builder{display:flex;flex-direction:column;gap:1rem;flex:1;margin-bottom:.5rem;padding-bottom:1rem}.batch-config-content{display:grid;grid-template-columns:2fr 1fr;gap:1rem;padding-bottom:1rem}.scenario-definition-panel,.simulations-panel{height:calc(100vh - 150px);max-height:calc(100vh - 150px);overflow-y:auto}@media (max-width: 900px){.geometry-builder-content,.batch-config-content{grid-template-columns:1fr!important;grid-template-rows:auto auto auto auto}.scenario-definition-panel{grid-column:1;grid-row:1}}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-primary)}.loading-spinner{width:40px;height:40px;border:4px solid var(--accent-secondary);border-top:4px solid var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-state h3{margin:0 0 .5rem;color:var(--error-text)}.error-state p{margin:0 0 1rem;color:var(--text-muted)}.panel-header{display:flex;justify-content:space-between;align-items:center}.panel-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:none;letter-spacing:0px}.filename-input-section{padding:1rem;background:#ffffff1a;border-radius:4px;margin-bottom:1.5rem}.filename-input-group{display:flex;align-items:center;gap:1rem}.filename-label{font-weight:var(--font-weight-medium);color:var(--text-primary);font-size:var(--font-size-sm);white-space:nowrap}.filename-input-row{display:flex;flex:1;gap:1rem;align-items:center}.filename-input{flex:1;height:var(--form-input-height);font-size:var(--font-size-base);padding:var(--form-input-padding);border:var(--form-input-border);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-input);font-family:var(--font-family);transition:var(--transition-colors);margin-bottom:2px}.filename-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-outline)}.filename-input.invalid{border-color:var(--error-text);background:var(--error-bg)}.filename-error{color:var(--error-text);font-size:.75rem;margin-top:.25rem}.tab-name-input{background:transparent;border:none;font-size:1rem;color:var(--text-primary);padding:0;margin:0;outline:none;width:100%;font-weight:700;font-family:inherit;line-height:inherit;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;position:relative;z-index:1}.tab-name-input:focus{background:var(--hover-bg);border-radius:2px;padding:1px 2px;color:var(--text-primary);outline:none}.parameter-picker,.parameter-picker-header{margin-bottom:16px}.parameter-picker-header h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.parameter-picker-description{margin:0;font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-normal)}.parameter-accordions{display:flex;flex-direction:column;gap:.5rem}.required-indicator{color:var(--error-text);margin-left:4px;font-weight:700}.no-parameters{text-align:center;padding:1rem;color:var(--text-muted);font-style:italic}.validation-errors{margin-top:1rem;padding:1rem;background:var(--error-bg);border:1px solid var(--error-text);border-radius:4px}.validation-errors h3{margin:0 0 .5rem;color:var(--error-text);font-size:1rem}.validation-errors ul{margin:0;padding-left:1.5rem}.validation-error{color:var(--error-text);font-size:.875rem;margin-bottom:.25rem}.running-indicator{display:flex;align-items:center;gap:.5rem;color:var(--success-text);font-weight:500;font-size:.875rem}.running-spinner{width:16px;height:16px;border:2px solid var(--success-bg);border-top:2px solid var(--success-text);border-radius:50%;animation:spin 1s linear infinite}.permutations-badge.warning,.permutations-badge.error{background:var(--error-bg);color:var(--error-text);border-color:var(--error-text)}.scenario-tab .scenario-tab-name{color:var(--text-primary);position:relative;z-index:0}.parameter-selection{display:grid;grid-template-columns:1fr 2fr;gap:1rem;height:calc(100vh - 400px);min-height:300px;max-height:600px;overflow:hidden}.parameter-categories{background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;overflow-y:auto;max-height:100%;height:100%;display:flex;flex-direction:column}.parameter-categories-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border-bottom:var(--border-width-thin) solid var(--border-subtle);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);flex-shrink:0;position:sticky;top:0;z-index:var(--z-sticky)}.parameter-category:last-child{border-bottom:none}.parameter-category:hover{background:var(--hover-bg)}.parameter-category.selected{background:var(--selected-bg);border-left:3px solid var(--accent-primary)}.parameter-category-content{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.parameter-category-name{flex:1;font-weight:var(--font-weight-medium);color:var(--text-primary)}.parameter-category .badge-count{margin-left:.5rem}.parameter-category .badge-required{background:var(--error-bg);color:var(--error-text);border-color:var(--error-text)}.parameter-files{background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;overflow-y:auto;max-height:100%;height:100%;display:flex;flex-direction:column}.no-category-selected{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-style:italic;text-align:center;padding:2rem}.parameter-files-table-wrapper{flex:1;overflow-y:auto;min-height:0}.parameter-files-table{width:100%;border-collapse:collapse;font-size:.875rem}.parameter-files-table th{padding:var(--table-header-padding);background:var(--bg-primary);border-bottom:var(--border-width-thin) solid var(--border-subtle);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-align:left;position:sticky;top:0;z-index:var(--z-sticky)}.parameter-files-table td{padding:var(--table-cell-padding);border-bottom:var(--border-width-thin) solid var(--border-subtle);font-size:var(--font-size-sm);vertical-align:top;transition:var(--transition-colors)}.parameter-file-row{cursor:pointer;transition:var(--transition-colors)}.parameter-file-row:hover{background-color:var(--hover-bg)}.parameter-file-row.selected{background:var(--selected-bg)}.parameter-file-name{font-weight:var(--font-weight-medium);color:var(--text-primary);min-width:120px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parameter-file-select{text-align:right;width:70px;padding-right:12px}.parameter-file-select input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer}.no-parameters{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic}.simulation-queue{flex:1;overflow-y:auto;margin-bottom:1rem}.empty-queue{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:var(--text-muted);text-align:center}.empty-queue-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-queue-text{font-size:1.1rem;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.empty-queue-subtext{font-size:.875rem;opacity:.7}.queue-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md);border:var(--border-width-thin) solid var(--border-subtle);box-shadow:var(--shadow-subtle);transition:var(--transition-colors)}.queue-item:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-medium);transform:translateY(-1px)}.queue-item.completed{border-color:var(--success-text);background:var(--success-bg)}.queue-item.error{border-color:var(--error-text);background:var(--error-bg)}.queue-item.running{border-color:var(--accent-primary);background:var(--hover-bg)}.queue-status-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-secondary);color:var(--text-muted)}.queue-status-icon.queued{background:var(--bg-secondary);color:var(--text-secondary)}.queue-status-icon.running{background:var(--accent-primary);color:var(--text-on-accent);animation:none}.queue-status-icon.completed{background:var(--success-text);color:#fff}.queue-status-icon.error{background:var(--error-text);color:#fff}.queue-item-content{flex:1;min-width:0}.queue-item-name{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm)}.queue-item-status{color:var(--text-muted);font-size:.75rem;margin-bottom:.25rem}.queue-item-details{font-size:.75rem;color:var(--text-secondary);line-height:1.3}.queue-item-combination,.queue-item-model,.queue-item-simulation{margin-bottom:.125rem}.parameter-file-row.zone-specific{background:var(--hover-bg);border-left:3px solid var(--accent-secondary)}.zone-allocation-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--accent-primary);color:var(--bg-primary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-left:var(--spacing-sm)}.zone-accordion-row{background:#b7cec408}.zone-accordion-row td{padding:0;border-bottom:none}.scenario-tabs .btn.btn-standard.btn-yellow.add-scenario-btn{background:var(--accent-primary)!important;color:var(--text-on-accent)!important;border:none!important;box-shadow:0 1px 2px #1a34370f!important}.scenario-tabs .btn.btn-standard.btn-yellow.add-scenario-btn:hover:not(:disabled){background:var(--accent-hover)!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px #1a34371f!important}.saved-configs-section,.run-queue-section{margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.section-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.section-actions{display:flex;gap:8px}.loading-configs{display:flex;align-items:center;gap:12px;padding:20px;color:var(--text-muted);font-size:14px}.loading-spinner{width:16px;height:16px;border:2px solid var(--border-subtle);border-top:2px solid var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.configs-error{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--error-bg);color:var(--error-text);border-radius:6px;font-size:13px;margin-bottom:16px}.empty-configs,.empty-queue{display:flex;flex-direction:column;align-items:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.empty-configs-icon,.empty-queue-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-configs-text,.empty-queue-text{font-size:16px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.empty-configs-subtext,.empty-queue-subtext{font-size:13px;color:var(--text-secondary);max-width:300px;line-height:1.4}.config-cards-container{max-height:400px;overflow-y:auto;padding-right:4px}.config-cards-container::-webkit-scrollbar{width:6px}.config-cards-container::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}.config-cards-container::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:3px}.config-cards-container::-webkit-scrollbar-thumb:hover{background:var(--accent-secondary)}.simulation-queue{max-height:300px;overflow-y:auto;padding-right:4px}.simulation-queue::-webkit-scrollbar{width:6px}.simulation-queue::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}.simulation-queue::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:3px}.simulation-queue::-webkit-scrollbar-thumb:hover{background:var(--accent-secondary)}@media (max-width: 768px){.section-header{flex-direction:column;align-items:flex-start;gap:12px}.section-actions{width:100%;justify-content:space-between}.run-selected-button{width:100%;margin-top:8px}.config-cards-container,.simulation-queue{max-height:300px}}.zone-accordion{background-color:transparent;border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);margin:var(--spacing-xs) 0;padding:var(--spacing-sm);animation:slideDown .3s ease-out}.zone-accordion-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) 0;cursor:pointer;border-bottom:var(--border-width-thin) solid var(--border-subtle);margin-bottom:var(--spacing-xs)}.zone-accordion-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.zone-accordion-content{padding:var(--spacing-xs) 0}.zone-checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.zone-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.zone-checkbox:hover{background-color:var(--hover-bg);border-radius:var(--radius-sm)}.zone-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.zone-checkbox-label{font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;flex:1}.parameter-file-row.zone-specific.selected{background-color:var(--selected-bg);border-left:3px solid var(--accent-primary)}.zone-accordion-row{background-color:transparent;transition:all .2s ease-in-out;transform-origin:top;animation:slideDown .3s ease-out}.parameter-files-table{table-layout:fixed;width:100%}.parameter-files-table td{vertical-align:top;transition:all .2s ease-in-out}.zone-accordion-row td{padding:0;border:none;background:transparent}.zone-accordion-row .zone-accordion{margin:0;border-radius:0;border-left:3px solid var(--accent-primary);background-color:transparent;padding:var(--spacing-xs) var(--spacing-sm);transform:translateZ(0);will-change:transform,opacity}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.zone-loading{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-primary)}.zone-loading-spinner{width:16px;height:16px;border:2px solid var(--accent-secondary);border-top:2px solid var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.zone-error{color:var(--error-text);font-size:var(--font-size-sm);padding:var(--spacing-sm);background:var(--error-bg);border:var(--border-width-thin) solid var(--error-text);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg)}.validation-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-secondary);border-radius:var(--radius-sm);border-left:4px solid var(--error-text)}.validation-expandable{cursor:pointer;-webkit-user-select:none;user-select:none}.validation-count{background-color:var(--error-text);color:#fff;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:700}.validation-card{background-color:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);display:block;transition:max-height .35s cubic-bezier(.4,0,.2,1),margin .35s cubic-bezier(.4,0,.2,1);max-height:60px;margin-bottom:var(--spacing-sm);overflow:hidden}.validation-card.expanded{max-height:400px;margin-bottom:var(--spacing-xxl)}.validation-card:hover{box-shadow:var(--shadow-medium)}.validation-card-content{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.validation-pillbox{background-color:var(--error-text);color:#fff;border-radius:16px;padding:4px 12px;font-size:12px;font-weight:700;min-width:24px;text-align:center;flex-shrink:0}.validation-issue-text{flex:1;font-size:var(--font-size-sm);color:var(--text-primary)}.validation-expand-icon{font-size:var(--font-size-xs);color:var(--text-secondary);flex-shrink:0;transition:transform .2s ease}.validation-tray{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--bg-secondary);border-top:var(--border-width-thin) solid var(--border-subtle);border-radius:0 0 var(--radius-md) var(--radius-md)}.validation-tray-item{padding:var(--spacing-sm) 0;font-size:var(--font-size-sm);color:var(--text-primary);border-bottom:var(--border-width-thin) solid var(--border-subtle)}.validation-tray-item:last-child{border-bottom:none}.validation-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:.5rem;width:16px;height:16px;background-color:var(--error-bg);border:2px solid var(--error-text);border-radius:50%}.validation-badge-icon{color:var(--error-text);font-weight:700;font-size:12px;line-height:1}.zone-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;padding:.5rem 0}.zone-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-colors);min-height:40px}.zone-card:hover{border-color:var(--accent-secondary);background:var(--hover-bg)}.zone-card.selected{background:var(--selected-bg);border-color:var(--accent-primary)}.zone-card-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.zone-card-name{font-weight:var(--font-weight-medium);color:var(--text-primary);font-size:var(--font-size-sm)}.zone-card-checkbox{margin-left:auto}.zone-card-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-primary);cursor:pointer}.zone-allocation-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-text);white-space:nowrap}.parameter-categories-header{padding:var(--table-header-padding);background:var(--bg-primary);border-bottom:var(--border-width-thin) solid var(--border-subtle);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-secondary);flex-shrink:0;position:sticky;top:0;z-index:var(--z-sticky)}.parameter-categories-list{flex:1;overflow-y:auto;min-height:0}.parameter-category{padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:var(--transition-colors);border-bottom:var(--border-width-thin) solid var(--border-subtle);font-size:var(--font-size-sm);color:var(--text-primary);flex-shrink:0}.config-selector{display:flex;align-items:center;gap:10px;padding:10px 0}.config-selector-label{font-weight:500;color:#1a3437;font-size:14px;white-space:nowrap}.config-selector-loading,.config-selector-error,.config-selector-empty{display:flex;align-items:center;gap:8px;padding:8px 12px;border:2px solid #EBEBEB;border-radius:4px;background-color:#f7f7f7;color:#666;font-size:14px;min-width:200px}.config-selector-loading .loading-spinner{width:16px;height:16px;border:2px solid #EBEBEB;border-top:2px solid #EAFD5A;border-radius:50%;animation:spin 1s linear infinite}.config-selector-error{border-color:#ffcdd2;background-color:#ffebee;color:#d32f2f}.config-selector-empty{border-color:#fff3e0;background-color:#fff8e1;color:#f57c00}@media (max-width: 768px){.config-selector{flex-direction:column;align-items:flex-start;gap:8px}.config-selector-loading,.config-selector-error,.config-selector-empty{min-width:100%;width:100%}}.virtualized-table-container{display:flex;flex-direction:column;height:auto;background-color:#1a3437;border-radius:4px;overflow:auto}.virtualized-table-header{position:sticky;top:0;z-index:10;background-color:#1a3437;border-bottom:2px solid #2A4A4F;overflow:hidden}.virtualized-table-header-row{display:flex;min-width:600px}.virtualized-table-header-cell{display:flex;align-items:center;padding:12px 20px;background-color:#2a4a4f4d;color:#b7cec4;font-weight:500;font-size:12px;border-right:1px solid #2A4A4F;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.virtualized-table-header-cell:last-child{border-right:none}.virtualized-table-header-cell .sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease;outline:none;border-radius:2px;padding:2px 4px;margin:-2px -4px}.virtualized-table-header-cell .sortable:hover,.virtualized-table-header-cell .sortable:focus-visible{color:#eafd5a;background-color:#eafd5a1a}.virtualized-table-body{flex:1;overflow:auto;background-color:#1a3437}.virtualized-table-row{display:flex;min-width:600px;cursor:pointer;transition:background-color .15s ease;border-bottom:1px solid rgba(42,74,79,.3)}.virtualized-table-row:focus-within{background-color:#eafd5a14;outline:2px solid rgba(234,253,90,.3);outline-offset:-2px}.virtualized-table-cell{display:flex;align-items:center;padding:8px 20px;font-size:13px;color:#fff;border-right:1px solid rgba(42,74,79,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.virtualized-table-cell:last-child{border-right:none}.virtualized-table-row:not(.selected):hover{background-color:#eafd5a14}.virtualized-table-row.selected{background-color:#eafd5a26!important}.virtualized-table-row.selected:hover{background-color:#eafd5a38!important}.virtualized-table-row.no-hover:hover{background-color:transparent!important;cursor:default!important}.virtualized-table-header-cell.open-folder-column,.virtualized-table-cell.open-folder-column{width:40px!important;min-width:40px!important;max-width:40px!important;padding:6px 8px!important;justify-content:center}.virtualized-table-cell.open-folder-column button{border-radius:4px;transition:all .2s ease}.virtualized-table-cell.open-folder-column button:focus-visible{outline:2px solid #EAFD5A;outline-offset:2px}@media (prefers-contrast: high){.virtualized-table-header-cell,.virtualized-table-cell{border-right:2px solid #4A6A6F}.virtualized-table-row{border-bottom:2px solid #4A6A6F}}@media (prefers-reduced-motion: reduce){.virtualized-table-row,.virtualized-table-header-cell .sortable,.virtualized-table-cell.checkbox-column input[type=checkbox]{transition:none}}.multi-metrics-table-wrapper{position:relative;width:100%;max-width:100%;overflow:hidden}.multi-metrics-table-wrapper .virtualized-table-container{overflow-x:auto;overflow-y:visible;width:100%;position:relative}.multi-metrics-table-wrapper .sticky-metric-column{position:sticky;left:0;background-color:#1a3437;z-index:5;border-right:2px solid #2A4A4F;box-shadow:2px 0 4px #0000001a}.multi-metrics-table-wrapper .virtualized-table-header .sticky-metric-column{z-index:6;background-color:#2a4a4f4d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.multi-metrics-table-wrapper .virtualized-table-container{scrollbar-width:thin;scrollbar-color:#2A4A4F #1A3437;scroll-behavior:smooth}.multi-metrics-table-wrapper .virtualized-table-container::-webkit-scrollbar{height:8px}.multi-metrics-table-wrapper .virtualized-table-container::-webkit-scrollbar-track{background:#1a3437;border-radius:4px}.multi-metrics-table-wrapper .virtualized-table-container::-webkit-scrollbar-thumb{background:#2a4a4f;border-radius:4px}.multi-metrics-table-wrapper .virtualized-table-container::-webkit-scrollbar-thumb:hover{background:#3a5a5f}.results-viewer-fullscreen{display:flex;flex-direction:column;height:100vh;background-color:#1a3437;color:#fff;overflow:hidden}.action-bar{display:flex;justify-content:space-between;align-items:center;padding:15px 25px;background-color:#1a3437;border-bottom:1px solid #2A4A4F;flex-shrink:0;gap:20px}.action-bar-left{display:flex;align-items:center;gap:25px}.action-bar-right{display:flex;align-items:center;gap:12px}.screen-title{font-size:20px;font-weight:500;color:#eafd5a;margin:0;white-space:nowrap}.split-pane-container{display:flex;flex:1;min-height:0;overflow:hidden}.inputs-pane,.outputs-pane{display:flex;flex-direction:column;min-height:0;overflow:auto;background-color:#1a3437}.split-pane-resizer{display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;background-color:#2a4a4f}.split-pane-resizer:hover{background-color:#eafd5a1a!important}.split-pane-resizer:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1px;height:30px;background-color:#4a6a6f;opacity:.8;transition:all .2s ease}.split-pane-resizer:hover:before{opacity:1;background-color:#eafd5a;width:2px}.table-container{flex:1;display:flex;flex-direction:column;min-height:0;overflow:auto;background-color:#1a3437;margin:0;border:none}.results-table{width:100%;border-collapse:collapse;background-color:transparent;table-layout:auto;min-width:600px}.results-table thead{position:sticky;top:0;z-index:10}.results-table th{background-color:#1a3437;color:#b7cec4;font-weight:500;padding:8px 20px;text-align:left;border:none;font-size:12px;white-space:nowrap;min-width:100px;overflow:hidden;text-overflow:ellipsis}.checkbox-column{width:40px!important;min-width:40px!important;max-width:40px!important;text-align:center!important;padding:6px 8px!important}.checkbox-column input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#EAFD5A}.checkbox-column input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.results-table td{padding:6px 20px;border:none;font-size:13px;color:#fff;white-space:nowrap;min-width:100px;overflow:hidden;text-overflow:ellipsis;background-color:transparent}.results-table tbody tr:hover{background-color:#eafd5a0d;cursor:pointer}.results-table tbody tr:nth-child(2n){background-color:transparent}.results-table tbody tr.selected{background-color:#eafd5a1a!important}.results-table tbody tr.selected:hover{background-color:#eafd5a26!important}.pagination{padding:12px 20px;display:flex;justify-content:center;align-items:center;gap:12px;border-top:1px solid #2A4A4F;flex-shrink:0;background-color:#1a3437;margin-top:auto}.page-info{font-weight:400;color:#b7cec4;min-width:80px;text-align:center;font-size:12px}.chart-header{padding:0 25px;background-color:#1a3437;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #2A4A4F;min-height:65px}.chart-header-left{display:flex;align-items:center;gap:20px}.chart-header-right{display:flex;align-items:center;gap:15px}.chart-title{font-size:16px;font-weight:500;color:#eafd5a;margin:0;display:flex;align-items:center;gap:10px}.selected-count{font-size:13px;font-weight:400;color:#b7cec4;background-color:#eafd5a1a;padding:2px 8px;border-radius:12px;border:1px solid rgba(234,253,90,.3)}.selection-limit-warning{font-size:12px;color:#ff9f43;background-color:#ff9f431a;padding:4px 8px;border-radius:4px;border:1px solid rgba(255,159,67,.3);margin-top:4px}.multi-metric-tabs.tab-container{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#2A4A4F #1A3437;padding-bottom:4px;flex-shrink:0}.multi-metric-tabs.tab-container::-webkit-scrollbar{height:6px}.multi-metric-tabs.tab-container::-webkit-scrollbar-track{background:#1a3437;border-radius:3px}.multi-metric-tabs.tab-container::-webkit-scrollbar-thumb{background:#2a4a4f;border-radius:3px}.multi-metric-tabs.tab-container::-webkit-scrollbar-thumb:hover{background:#4a6a6f}.multi-metric-tabs .tab-button-base{min-width:140px;max-width:200px}.multi-metric-tabs .tab-name{max-width:120px}.chart-selector{background-color:#2a4a4f;color:#fff;border:1px solid #4A6A6F;border-radius:4px;padding:6px 10px;font-size:12px;min-width:120px}.chart-selector:focus{outline:none;border-color:#eafd5a}.chart-container{flex:1;display:flex;flex-direction:column;min-height:0;background-color:#1a3437;margin:0;border:none;overflow:auto;width:100%;box-sizing:border-box;position:relative}.btn-primary,.btn-secondary{padding:8px 14px;border:1px solid #4A6A6F;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.btn-primary{background-color:#eafd5a;color:#1a3437;border-color:#eafd5a}.btn-primary:hover{background-color:#d4e84a}.btn-secondary{background-color:transparent;color:#b7cec4;border-color:#4a6a6f}.btn-secondary:hover{background-color:#eafd5a1a;border-color:#eafd5a;color:#eafd5a}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;background-color:#1a3437;color:#fff}.loading-spinner{width:32px;height:32px;border:3px solid #2A4A4F;border-top:3px solid #EAFD5A;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}.error-container h3{margin-bottom:8px;color:#eafd5a;font-size:16px}.error-container p{margin-bottom:15px;text-align:center;max-width:300px;color:#b7cec4;font-size:14px}@media (max-width: 900px){.split-pane-container{flex-direction:column}.split-pane-resizer{display:none}.inputs-pane,.outputs-pane{width:100%!important;min-width:unset!important;max-width:unset!important}.chart-container{min-height:250px}.action-bar{flex-direction:column;gap:12px;padding:12px 20px}.action-bar-left,.action-bar-right{width:100%;justify-content:center}.chart-header{flex-direction:column;gap:10px;align-items:flex-start}.chart-header-left,.chart-header-right{width:100%;justify-content:space-between}}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;-webkit-user-select:none;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}.time-series-chart{display:flex;flex-direction:column;height:100%;width:100%;background:#1a3437;overflow:hidden;flex:1;min-width:0}.chart-header{display:flex;justify-content:space-between;align-items:center;padding:0 25px;background-color:#1a3437;flex-shrink:0;border-bottom:1px solid #2A4A4F;min-height:65px;width:100%;box-sizing:border-box}.chart-header h3{margin:0;font-size:14px;font-weight:500;color:#eafd5a}.chart-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;max-width:100%}.chart-container{flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;position:relative;background-color:#1a3437;min-height:0;width:100%;box-sizing:border-box;overflow:hidden}.chart-canvas{width:100%!important;height:100%!important;display:block!important;visibility:visible!important;opacity:1!important;box-sizing:border-box!important;margin:0!important}.chart-container.empty-state{color:#b7cec4;text-align:center;align-items:center;justify-content:center}.chart-container.empty-state p{margin:0;font-size:14px;max-width:300px}.chart-info{padding:12px 20px;background:#1a3437;border-top:1px solid #2A4A4F;flex-shrink:0}.chart-info p{margin:0;font-size:12px;color:#b7cec4;text-align:center}.zoom-hint{margin-top:8px!important;font-size:11px!important;color:#b7cec4!important;font-style:italic}.loading-spinner{width:40px;height:40px;border:4px solid #EBEBEB;border-top:4px solid #EAFD5A;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-text{font-size:16px;color:#666;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 900px){.chart-header{flex-direction:column;gap:12px;align-items:stretch}.chart-controls{justify-content:center}}@media (max-width: 600px){.chart-header{padding:12px 16px}.chart-container{padding:16px}}.modal-title-input{font-size:1.5rem;font-weight:600;color:var(--text-primary);background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:2px 6px;min-width:240px;flex:1}.modal-title-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-outline)}.modal-header{display:flex;align-items:center;gap:.5rem}.modal-title{margin:0;flex:1}.modal-close-button{margin-left:auto;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem}.modal-close-button:hover{color:var(--text-primary)}html,body{height:100%;margin:0;padding:0;overflow:hidden}#root{width:100%;height:100vh;margin:0;padding:0}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover,.logo.react:hover{filter:drop-shadow(0 0 2em var(--accent-primary))}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:var(--text-muted)}.app{min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);display:flex;flex-direction:column}.app-header{background-color:var(--bg-primary);color:var(--text-primary);padding:var(--spacing-lg) var(--spacing-xxxl);text-align:center;border-bottom:var(--border-width-thin) solid var(--border-subtle)}.app-header h1{margin:0;font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.app-header p{margin:var(--spacing-sm) 0 0 0;opacity:.9;font-size:var(--font-size-lg);color:var(--text-secondary)}.app-main{flex:1;display:flex;flex-direction:column;height:calc(100vh - 120px);margin:0 .5rem .5rem;padding:0;padding-bottom:1rem}.filename-bar-panel{grid-column:1 / -1;grid-row:1;padding:0}.element-creator-panel{grid-column:1;grid-row:2;display:flex;flex-direction:column;height:100%;min-height:0}.element-viewer-panel{grid-column:2;grid-row:2;display:flex;flex-direction:column;height:100%;min-height:0}.file-directory-panel{grid-column:3;grid-row:2;display:flex;flex-direction:column;height:100%;min-height:0}.filename-bar{width:100%;display:flex;align-items:center;row-gap:.5rem;column-gap:.5rem;border-bottom-width:0}.filename-input-inline{display:flex;align-items:center;gap:.5rem}.filename-input-inline label{font-weight:500;color:var(--text-primary);font-size:.95rem;margin-right:.5rem;white-space:nowrap}.filename-field{padding:.15rem .5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:.95rem;min-width:180px;background:var(--bg-tertiary);color:var(--text-input);transition:all .2s;height:2rem}.filename-field:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-tertiary);box-shadow:0 0 0 2px var(--focus-outline)}.filename-actions{display:flex;align-items:center;gap:.5rem}.validation-badge{display:none}.filename-bar-panel,.element-creator-panel,.element-viewer-panel,.file-directory-panel{overflow:hidden;display:flex;flex-direction:column;height:100%;min-height:0}.filename-bar-panel{padding:0}.element-creator{display:flex;flex-direction:column;height:100%;min-height:0}.element-creator-header h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;font-variation-settings:"wght" 700;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.5px}.element-form{flex:1;overflow-y:auto;padding-right:.5rem;min-height:0}.form-section{margin-bottom:1.5rem}.form-section h3{display:none;color:var(--accent-primary);border-bottom:2px solid var(--accent-primary)}.form-group{display:grid;grid-template-columns:1fr 2fr;gap:.25rem 1rem;align-items:center;margin-bottom:.25rem;padding:.25rem 0;background:none;border-radius:0;border:none}.form-group label{font-weight:500;color:var(--text-secondary);font-size:.92rem;text-align:right;margin-right:.5rem;white-space:nowrap}.form-group input,.form-group select{width:100%;min-width:120px;max-width:220px;box-sizing:border-box;padding:.25rem .5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:.92rem;background:var(--bg-tertiary);color:var(--text-input);transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary);background:var(--hover-bg);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.form-group input.readonly{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed}.form-group input[type=checkbox],.form-group span{grid-column:1 / span 2;justify-self:start;text-align:left;margin-left:.5rem}.attribute-panel{display:flex;flex-direction:column;gap:.5rem}.form-actions{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(183,206,196,.3)}.element-viewer{display:flex;flex-direction:column;height:100%;min-height:0}.element-viewer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.element-viewer-header h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;font-variation-settings:"wght" 700;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.5px}.element-count{display:none}.element-tree{flex:1;overflow-y:auto;padding-right:.5rem;min-height:0}.zone-group{margin-bottom:.75rem;border:1px solid var(--border-subtle);border-radius:6px;background:transparent;transition:all .2s ease}.zone-group.selected{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-outline)}.zone-header{padding:.5rem .75rem;background:var(--bg-primary);border-bottom:1px solid var(--accent-secondary);cursor:pointer;transition:background-color .2s;color:var(--text-primary);display:flex;align-items:center;border-radius:6px 6px 0 0}.zone-header:hover{background:var(--bg-secondary)}.zone-info{display:flex;justify-content:space-between;align-items:center;width:100%}.zone-name{font-weight:600;color:var(--text-primary);font-size:1rem}.zone-details{font-size:.85rem;color:var(--text-primary);display:flex;gap:1rem;align-items:center}.zone-elements{padding:.5rem}.empty-zone{padding:.75rem;text-align:center;color:var(--text-secondary);font-style:italic;font-size:.875rem}.element-node{padding:.375rem .5rem;margin:.25rem 0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-tertiary);cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.element-node:hover{background:var(--hover-bg);border-color:var(--border-medium)}.element-node.selected{background:var(--selected-bg);border-color:var(--accent-primary)}.element-node-content{flex:1}.element-info{display:flex;justify-content:space-between;align-items:center}.element-name{font-weight:500;color:var(--text-primary);font-size:.875rem}.element-details{font-size:.75rem;color:var(--text-secondary);display:flex;gap:.5rem}.element-actions{display:flex;gap:.25rem;align-items:center}.action-button{background:none;border:none;padding:.375rem;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-secondary);width:28px;height:28px;min-width:28px;min-height:28px}.action-button:hover{background:var(--hover-bg);color:var(--text-primary)}.action-button:focus{outline:2px solid var(--focus-outline);outline-offset:2px}.action-button.delete:hover{background:var(--error-bg);color:var(--error-text)}.action-button.duplicate:hover{background:var(--hover-bg);color:var(--accent-primary)}.action-button:has(svg+span),.action-button:has(span+svg){gap:.5rem;padding:.5rem .75rem;width:auto;min-width:auto;font-size:.875rem;font-weight:500}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary)}.file-directory{height:100%;display:flex;flex-direction:column;min-height:0}.file-directory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.file-directory-header h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;font-variation-settings:"wght" 700;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.5px}.refresh-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;font-weight:var(--font-weight-medium);transition:var(--transition-colors)}.refresh-button:hover{background:var(--hover-bg);border-color:var(--border-medium)}.file-list{flex:1;overflow-y:auto;min-height:0}.file-table{width:100%;border-collapse:collapse;margin-top:0;background:var(--bg-tertiary);border-radius:var(--radius-md);overflow:hidden;border:var(--border-width-thin) solid var(--border-subtle)}.file-table th{background:var(--bg-primary);color:var(--text-secondary);padding:var(--table-header-padding);text-align:left;font-weight:var(--font-weight-medium);font-size:var(--font-size-base);border:none;border-bottom:var(--border-width-thin) solid var(--border-subtle);position:relative}.file-table td{padding:var(--table-cell-padding);border:none;border-bottom:var(--border-width-thin) solid var(--border-subtle);font-size:var(--font-size-base);vertical-align:middle;background:transparent;color:var(--text-primary)}.file-row{cursor:pointer;transition:var(--transition-colors);background:transparent;border:none}.file-row:hover{background:var(--hover-bg)}.file-name{font-weight:500;color:var(--text-primary);min-width:120px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-zones,.file-elements{text-align:center;font-weight:600;color:var(--text-primary);min-width:40px;max-width:60px;width:60px}.file-modified{display:none}.loading-state,.error-state{text-align:center;padding:2rem;color:var(--text-secondary)}.retry-button{margin-top:1rem;padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-primary);color:var(--text-on-accent);border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:var(--font-weight-medium);transition:var(--transition-colors)}.retry-button:hover{background:var(--accent-secondary)}.zone-creator{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.zone-creator h2{margin-top:0;color:var(--text-primary);border-bottom:2px solid var(--accent-primary);padding-bottom:.5rem}.add-zone-form{background:var(--bg-secondary);padding:1.5rem;border-radius:6px;margin-bottom:2rem;border:1px solid var(--border-subtle)}.add-zone-form h3{margin-top:0;color:var(--text-primary)}.add-zone-form>div{margin-bottom:1rem}.add-zone-form label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.add-zone-form select,.add-zone-form input{width:100%;padding:.5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:1rem;background:var(--bg-tertiary);color:var(--text-input)}.add-zone-form select:focus,.add-zone-form input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-outline)}.add-zone-form button{background:var(--accent-primary);color:var(--text-on-accent);border:none;padding:.75rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease}.add-zone-form button:hover{background:var(--accent-hover);transform:translateY(-1px)}.zones-list{margin-bottom:2rem}.zones-list h3{color:var(--text-primary);margin-bottom:1rem}.zones-list ul{list-style:none;padding:0}.zones-list li{background:var(--bg-secondary);padding:1rem;margin-bottom:.5rem;border-radius:var(--radius-sm);display:flex;justify-content:space-between;align-items:center;border:1px solid var(--border-subtle)}.zones-list button{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-text);padding:.5rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;transition:all .2s ease}.zones-list button:hover{background:var(--error-text);color:var(--text-primary)}.actions{display:flex;gap:1rem;margin-bottom:2rem}.validation-results{margin-top:1rem;padding:1rem;border-radius:var(--radius-sm)}.validation-results h3{margin-top:0;margin-bottom:.5rem}.validation-results .success{background:var(--success-bg);border:1px solid var(--success-text);color:var(--success-text)}.validation-results .errors{background:var(--error-bg);border:1px solid var(--error-text);color:var(--error-text)}.validation-results ul{margin:0;padding-left:1.5rem}.validation-results li{margin-bottom:.25rem}.zone-creator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.zone-creator-header h2{margin:0;color:var(--text-primary);border-bottom:none;padding-bottom:0}.validation-badge{padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:500;font-size:.875rem}.validation-badge.default{background:var(--bg-secondary);color:var(--text-secondary)}.validation-badge.success{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-text)}.validation-badge.error{background:var(--error-bg);color:var(--error-text)}.element-creator-header h2,.element-viewer-header h2,.file-directory-header h2{font-size:1.5rem;font-weight:700;color:var(--accent-primary);text-transform:none;letter-spacing:0px;margin:0 0 .75rem}.form-section h3,.form-section-title{font-size:1.25rem;font-weight:600;font-variation-settings:"wght" 600;color:#eafd5a;margin:1rem 0 .5rem;border-bottom:2px solid #EAFD5A;padding-bottom:.25rem}.element-type-selector{margin-bottom:1.5rem}.form-input{height:40px;font-size:16px;padding:0 12px;border:1.5px solid var(--border-subtle);border-radius:4px;background:var(--bg-tertiary);color:var(--text-input);width:100%;box-sizing:border-box}.form-group{margin-bottom:16px;display:flex;flex-direction:column}.form-group-booleans{display:flex;flex-direction:row;gap:24px;margin-bottom:16px;align-items:center}.attribute-panel-grid{display:grid;grid-template-columns:180px 1fr;gap:12px 20px;align-items:center;margin-bottom:24px}.attribute-label{font-size:15px;color:var(--text-primary);font-weight:500;text-align:right;padding-right:8px}.attribute-input{display:flex;align-items:center;justify-content:flex-start}.attribute-boolean-row{grid-column:1 / span 2;display:flex;align-items:center;gap:12px;margin:10px 0;font-size:15px}.element-form-grid{display:grid;grid-template-columns:180px 1fr;gap:12px 20px;align-items:center;margin-bottom:24px}.element-label{font-size:15px;color:var(--text-primary);font-weight:500;text-align:right;padding-right:8px}.element-input{width:100%;display:flex;align-items:center;gap:8px;min-width:0}.boolean-row{display:flex;align-items:center;justify-content:center;gap:16px;margin:18px 0;font-size:16px}.boolean-row label{font-size:1.1em;color:var(--text-primary);font-weight:500}.styled-checkbox{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.styled-checkbox:checked+.checkbox-custom{background:var(--accent-primary);border-color:var(--accent-primary)}.checkbox-custom{position:relative;display:flex;align-items:center;justify-content:center;height:1.6em;width:1.6em;background:transparent;border:2px solid var(--border-subtle);border-radius:var(--radius-sm);transition:background .2s,border-color .2s;box-sizing:border-box}.checkbox-custom:hover{border-color:var(--border-medium);background:var(--hover-bg)}.checkbox-custom:after{content:"";position:absolute;display:none}.styled-checkbox:checked+.checkbox-custom:after{display:block;top:40%;left:50%;width:40%;height:70%;border:solid var(--bg-primary);border-width:0 .18em .18em 0;transform:translate(-50%,-50%) rotate(45deg);content:"";background:none;box-sizing:border-box}.zone-form-grid{display:grid;grid-template-columns:180px 1fr;gap:12px 20px;align-items:center;margin-bottom:24px}.zone-label{font-size:15px;color:var(--text-primary);font-weight:500;text-align:right;padding-right:8px}.zone-input{width:100%}.modal-item-name{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:4px;padding:.75rem;margin:1rem 0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;color:var(--text-primary)}.element-creator-header,.element-viewer-header,.file-directory-header{margin-bottom:0}.element-creator-header h2,.element-viewer-header h2,.file-directory-header h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);text-transform:none;letter-spacing:0px}.top-header{width:100%;max-width:1360px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1rem 1rem;min-height:80px;background:transparent;box-sizing:border-box}.top-logo-section{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}.vulcan-logo{width:150px;height:auto;display:block}.version-info{display:flex;flex-direction:column;gap:.25rem;color:var(--text-primary);font-family:Clash Grotesk,sans-serif}.version-text{font-size:.9rem;font-weight:600;opacity:.9}.last-updated{font-size:.8rem;font-weight:400;opacity:.7}.top-nav{display:flex;justify-content:center;gap:1.5rem;flex:1;margin:0 2rem}.nav-btn{font-size:1.1rem;font-weight:600;background:var(--bg-secondary);color:var(--text-secondary);border:2px solid var(--border-subtle);border-radius:10px;padding:.6em 1.4em;margin:0 .3em;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #1a343714;font-family:Clash Grotesk,sans-serif}.nav-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary);box-shadow:0 3px 10px #eafd5a26;transform:translateY(-1px) scale(1.02)}.nav-btn:focus{outline:2px solid var(--accent-primary)}.profile-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.75rem;cursor:pointer;color:var(--text-primary);transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-button:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.profile-button:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.app-main{flex:1;display:flex;flex-direction:column;height:calc(100vh - 120px);margin:0 .5rem .5rem;padding:0}.geometry-builder{display:flex;flex-direction:column;height:100%;gap:1rem}.filename-bar-panel{grid-column:1 / -1;grid-row:1}.element-creator-panel{grid-column:1;grid-row:2;display:flex;flex-direction:column;min-height:0}.element-viewer-panel{grid-column:2;grid-row:2;display:flex;flex-direction:column;min-height:0}.file-directory-panel{grid-column:3;grid-row:2;display:flex;flex-direction:column;min-height:0}.element-creator,.element-viewer,.file-directory{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.element-creator-content,.element-viewer-content,.file-directory-content{flex:1;overflow-y:auto;min-height:0}@media (max-width: 900px){.geometry-builder-content{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.filename-bar-panel{grid-column:1;grid-row:1}.element-creator-panel{grid-column:1;grid-row:2}.element-viewer-panel{grid-column:1;grid-row:3}.file-directory-panel{grid-column:1;grid-row:4}}@media (max-width: 768px){.top-header{flex-direction:column;gap:1rem;padding:1rem}.top-nav{margin:0;gap:.5rem}.nav-btn{font-size:1rem;padding:.5em 1em}.app-main{height:calc(100vh - 160px)}}.profile-section{display:flex;align-items:center;gap:8px}.user-info{display:flex;align-items:center;gap:8px;margin-right:12px;font-size:.9rem;color:var(--text-primary);background:var(--bg-secondary);padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border-subtle)}.user-info span{font-weight:500;color:var(--text-primary)}@media (max-width: 768px){.profile-section{flex-direction:column;gap:.5rem;align-items:stretch}.user-info{margin-right:0;margin-bottom:.5rem;text-align:center}}.standard-card{background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--card-padding);overflow:hidden;display:flex;flex-direction:column;min-height:0;margin-top:0;transition:var(--transition-colors)}.standard-card:hover{border-color:var(--border-medium)}.standard-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0;padding-bottom:var(--spacing-lg);border-bottom:var(--border-width-thin) solid var(--border-subtle)}.standard-card-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:none;letter-spacing:0px}.standard-card-divider{display:none}.standard-card-content{flex:1;overflow-y:auto;min-height:0;padding-top:var(--spacing-lg)}@media (max-width: 900px){.standard-card{margin-top:0}}.filename-bar-panel .standard-card,.element-creator-panel .standard-card,.element-viewer-panel .standard-card,.file-directory-panel .standard-card{height:100%;display:flex;flex-direction:column}.batch-config-content .standard-card{height:calc(100% - 1rem);max-height:calc(100vh - 150px);display:flex;flex-direction:column}.batch-config-content .standard-card .standard-card-content,.filename-bar-panel .standard-card .standard-card-content,.element-creator-panel .standard-card .standard-card-content,.element-viewer-panel .standard-card .standard-card-content,.file-directory-panel .standard-card .standard-card-content{flex:1;overflow-y:auto;min-height:0}.geometry-builder-content{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto 1fr;gap:1rem;height:100%;flex:1;margin-top:0}.batch-config-builder{display:flex;flex-direction:column;gap:1rem;flex:1;margin-bottom:.5rem;padding-bottom:1rem}.batch-config-content{display:grid;grid-template-columns:2fr 1fr;gap:1rem;flex:1;min-height:0}.scenario-definition-panel{grid-column:1;grid-row:1;background:var(--bg-tertiary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--card-padding);display:flex;flex-direction:column;min-height:0;transition:var(--transition-colors)}.scenario-definition-panel:hover{border-color:var(--border-medium)}.batch-config-builder .scenario-definition-panel{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.results-viewer{display:flex;background-color:var(--bg-primary);color:var(--text-primary);font-family:Clash Grotesk,sans-serif;margin:0 .5rem;padding-bottom:1rem}.profile-dropdown-container{position:relative;display:flex;align-items:center}.profile-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:200px;z-index:1000;overflow:hidden}.profile-dropdown-header{padding:16px;border-bottom:1px solid rgba(255,255,255,.1)}.profile-dropdown-user-info{display:flex;align-items:center;gap:12px}.profile-dropdown-avatar{width:32px;height:32px;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.profile-dropdown-user-details{flex:1;min-width:0}.profile-dropdown-email{font-size:.9rem;font-weight:500;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-dropdown-label{font-size:.8rem;color:var(--text-secondary)}.profile-dropdown-divider{height:1px;background:var(--border-subtle);margin:0}.profile-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;text-align:left}.profile-dropdown-item:hover{background:var(--hover-bg)}.profile-dropdown-item svg{flex-shrink:0;color:var(--text-primary)}.profile-dropdown-item span{flex:1}.profile-dropdown-item:disabled{opacity:.5;cursor:not-allowed}.profile-dropdown-item:disabled:hover{background:none}.profile-dropdown-item .crash-badge{position:absolute;top:-4px;right:-4px;width:8px;height:8px;background-color:var(--error-text);border-radius:50%;border:1px solid var(--text-primary)}.profile-dropdown-item .icon-container{position:relative;flex-shrink:0}.profile-dropdown-version{padding:10px 16px;font-size:.95em;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between}.profile-dropdown-version .dev-badge{background:var(--accent-primary);color:var(--text-on-accent);border-radius:6px;padding:2px 8px;font-size:.8em;margin-left:8px;font-weight:700}.profile-dropdown-update-btn{display:flex;align-items:center;gap:6px;background:var(--accent-primary);color:var(--text-on-accent);border:none;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%;justify-content:center}.profile-dropdown-update-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.profile-dropdown-update-btn svg{width:12px;height:12px}.update-status-badge{font-size:10px;padding:2px 6px;border-radius:4px;margin-left:8px;font-weight:500;text-transform:uppercase}.update-status-badge.up-to-date{background:var(--success-text);color:var(--text-primary)}@media (max-width: 768px){.profile-dropdown{min-width:180px;right:-8px}.profile-dropdown-header{padding:12px}.profile-dropdown-item{padding:10px 12px}}.workspace-settings{display:flex;flex-direction:column;gap:1.5rem}.setting-group{display:flex;flex-direction:column;gap:.75rem}.setting-label{font-weight:600;color:var(--text-primary);font-size:.95rem}.current-workspace{background:#1a34370d;border:1px solid rgba(26,52,55,.1);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.workspace-path{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;color:var(--text-primary);word-break:break-all}.workspace-status{font-size:.85rem;color:var(--text-secondary);font-weight:500}.setting-divider{height:1px;background:#1a34371a;margin:.5rem 0}.directory-selector{display:flex;flex-direction:column;gap:1rem}.path-input-group{display:flex;gap:.5rem;align-items:center}.path-input{flex:1;padding:.75rem;border:1px solid var(--border-subtle);border-radius:6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;color:var(--text-input);background:var(--bg-tertiary)}.path-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-outline)}.validation-section{display:flex;flex-direction:column;gap:.5rem}.validation-result{padding:.75rem;border-radius:6px;font-size:.9rem;font-weight:500}.validation-result.valid{background:#6d7e4e1a;color:var(--text-secondary);border:1px solid rgba(109,126,78,.2)}.validation-result.invalid{background:#dc35451a;color:var(--text-primary);border:1px solid rgba(220,53,69,.2)}.migration-notice{background:#1a34370d;border:1px solid rgba(26,52,55,.1);border-radius:8px;padding:1rem;display:flex;gap:.75rem;align-items:flex-start}.notice-icon{font-size:1.2rem;flex-shrink:0;margin-top:.1rem}.notice-content{font-size:.9rem;color:var(--text-primary);line-height:1.4}.notice-content strong{color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#1a343780;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem}.modal-container{background:var(--bg-primary);border:var(--border-width-thin) solid var(--border-subtle);border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:600px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideIn .2s ease-out;padding:2rem 2rem 1.5rem}.modal-container.large{max-width:900px;max-height:85vh}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;margin-bottom:1.25rem;gap:1rem}.modal-icon{min-width:44px;min-height:44px;width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-primary)}.modal-icon.destructive{background-color:#e5484d26}.modal-icon.accent{background-color:var(--accent-primary)}.modal-icon.error{background-color:var(--error-text)}.modal-icon.success{background-color:var(--success-bg)}.modal-icon.info{background-color:var(--bg-secondary)}.modal-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary);flex:1}.modal-close-button{background:none;border:none;padding:.5rem;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center}.modal-close-button:hover{background:var(--hover-bg);color:var(--text-primary);transform:scale(1.05)}.modal-content{padding:0;background:none;border:none;border-radius:0;box-shadow:none;max-width:none;width:auto;max-height:none;overflow:visible;display:block;flex-direction:initial;flex:1;overflow-y:auto}.modal-message{margin:0 0 18px;font-size:1.05rem;font-weight:400;line-height:1.5;color:var(--text-primary)}.modal-child-elements{margin-bottom:18px}.modal-child-elements p{margin:0 0 10px;font-size:1.05rem;font-weight:400;color:var(--text-primary)}.modal-child-elements .child-elements-list{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.modal-warning{margin-top:0;font-size:1.05rem;font-weight:400;color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin:24px 0 0;padding-top:1rem;border-top:1px solid var(--border-subtle)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}@media (max-width: 768px){.modal-container{width:95%;max-width:none;padding:1.5rem 1rem 1rem;margin:.5rem}.modal-container.large{width:98%;max-width:none}.modal-backdrop{padding:.5rem}.modal-title{font-size:1.25rem}.modal-actions{flex-direction:column;gap:8px}.modal-actions.center{flex-direction:column}}.loading{text-align:center;color:var(--accent-primary);font-weight:500}.error{color:var(--text-primary);font-weight:500;padding:1rem;background:#dc35451a;border:1px solid rgba(220,53,69,.2);border-radius:6px}.logs-content{display:flex;flex-direction:column;gap:1rem;max-height:70vh;overflow:hidden}.logs-tabs{display:flex;border-bottom:1px solid var(--border-subtle);margin-bottom:1rem}.logs-tab{background:none;border:none;padding:.75rem 1rem;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.logs-tab:hover{color:var(--text-primary);background-color:var(--hover-bg)}.logs-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-primary);background-color:var(--selected-bg)}.tab-count{font-size:.8rem;color:var(--text-muted);background-color:var(--bg-secondary);padding:.1rem .4rem;border-radius:10px;min-width:20px;text-align:center}.logs-tab.active .tab-count{background-color:var(--accent-primary);color:var(--bg-primary)}.no-files{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic;background-color:var(--bg-secondary);border-radius:6px;border:1px dashed var(--border-subtle)}.logs-table-container{flex:1;overflow:auto;border:var(--border-width-thin) solid var(--border-subtle);border-radius:8px}.logs-table{width:100%;border-collapse:collapse;font-size:.9rem}.logs-table th{background-color:var(--bg-secondary);padding:.75rem .5rem;text-align:left;font-weight:600;border-bottom:var(--border-width-thin) solid var(--border-subtle);position:sticky;top:0;z-index:1;color:var(--text-secondary)}.logs-table td{padding:.5rem;border-bottom:var(--border-width-thin) solid var(--border-subtle);vertical-align:top;color:var(--text-primary)}.log-file-row:hover{background-color:var(--hover-bg)}.log-filename{font-weight:500;color:var(--text-primary);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-size{color:var(--text-secondary);font-family:monospace;text-align:right}.log-modified{color:var(--text-muted);font-size:.85rem;white-space:nowrap}.log-preview{max-width:300px}.preview-content{font-family:monospace;font-size:.8rem;color:var(--text-input);background-color:var(--bg-secondary);padding:.25rem .5rem;border-radius:4px;border:1px solid var(--border-subtle);max-height:60px;overflow:hidden;line-height:1.4}.log-actions{text-align:center}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid var(--border-subtle)}.pagination-info{font-size:.9rem;color:var(--text-muted)}.dev-tools-section{border-top:1px solid var(--border-subtle);padding-top:1rem}.dev-tools-section h3{margin:0 0 .5rem;font-size:1rem;color:var(--text-primary)}.dev-tools-grid{display:flex;gap:.5rem;flex-wrap:wrap}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-top:1px solid var(--border-subtle);gap:1rem}.footer-left{flex:1}.footer-right{display:flex;gap:.5rem;align-items:center}.telemetry-consent-section{display:flex;flex-direction:column;gap:.5rem}.telemetry-consent-checkbox{display:flex;align-items:flex-start;gap:.5rem;font-size:.9rem;color:var(--text-muted);cursor:pointer;line-height:1.4}.telemetry-consent-checkbox input[type=checkbox]{margin:0;margin-top:.1rem}.telemetry-consent-checkbox:disabled{cursor:not-allowed;opacity:.6}.loading-indicator{color:var(--accent-primary);font-weight:700}.telemetry-error{font-size:.8rem;color:var(--text-primary);margin-top:.25rem}.telemetry-info{font-size:.8rem;color:var(--text-muted)}.privacy-policy-link{color:var(--accent-primary);text-decoration:none}.privacy-policy-link:hover{text-decoration:underline}.auto-share-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-muted);cursor:pointer}.auto-share-checkbox input[type=checkbox]{margin:0}.auto-share-checkbox span{line-height:1.4}@media (max-width: 768px){.logs-table{font-size:.8rem}.logs-table th,.logs-table td{padding:.25rem}.log-filename{max-width:120px}.log-preview{max-width:150px}.preview-content{font-size:.7rem;max-height:40px}.modal-footer{flex-direction:column;align-items:stretch;gap:1rem}.footer-right{justify-content:flex-end}.dev-tools-grid{justify-content:center}}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin:24px 0 0}.modal-actions.center{justify-content:center}.delete-pill{width:100%;display:flex;align-items:center;background:var(--error-bg);border:1px solid var(--error-bg);border-radius:999px;padding:.5em 1.2em;font-size:1rem;font-weight:500;color:var(--error-text);gap:.75em;margin-bottom:1em;max-width:100%;min-width:0}.delete-pill-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-size:1rem}.delete-pill-type{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:999px;padding:.2em .8em;font-size:.95em;font-weight:400}.update-banner{position:fixed;top:20px;left:20px;z-index:1000;max-width:400px;min-width:350px;background:var(--modal-bg, #1a1a1a);border:1px solid var(--modal-border, #333);border-radius:8px;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:updateBannerSlideIn .3s ease-out}@keyframes updateBannerSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.update-banner-content{display:flex;align-items:center;padding:16px;gap:12px;position:relative}.update-banner-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--accent-color, #fbbf24)}.update-banner-text{flex:1;min-width:0}.update-banner-title{font-weight:600;font-size:14px;color:var(--text-primary, #ffffff);margin-bottom:2px;line-height:1.2}.update-banner-subtitle{font-size:12px;color:var(--text-secondary, #a0a0a0);line-height:1.3}.update-banner-actions{display:flex;gap:8px;flex-shrink:0}.update-banner-close{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary, #a0a0a0);cursor:pointer;border-radius:4px;transition:all .2s ease}.update-banner-close:hover{background:var(--hover-bg, #333);color:var(--text-primary, #ffffff)}.update-banner-progress{margin-top:8px}.update-banner-progress-bar{width:100%;height:4px;background:var(--progress-bg, #333);border-radius:2px;overflow:hidden;margin-bottom:4px}.update-banner-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-color, #fbbf24),#f59e0b);border-radius:2px;transition:width .3s ease}.update-banner-progress-text{font-size:11px;color:var(--text-secondary, #a0a0a0);font-weight:500}.update-banner .btn-sm{padding:6px 12px;font-size:12px;font-weight:500;border-radius:4px;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.update-banner .btn-primary{background:var(--accent-color, #fbbf24);color:var(--text-dark, #000000)}.update-banner .btn-primary:hover{background:var(--accent-hover, #f59e0b);transform:translateY(-1px)}.update-banner .btn-secondary{background:var(--button-secondary-bg, #333);color:var(--text-primary, #ffffff);border:1px solid var(--button-secondary-border, #555)}.update-banner .btn-secondary:hover{background:var(--button-secondary-hover, #444);border-color:var(--button-secondary-hover-border, #666)}@media (max-width: 480px){.update-banner{left:10px;right:10px;max-width:none;min-width:auto}.update-banner-content{padding:12px;gap:8px}.update-banner-actions{flex-direction:column;gap:4px}.update-banner .btn-sm{width:100%;justify-content:center}}@media (prefers-color-scheme: dark){.update-banner{background:var(--modal-bg-dark, #0a0a0a);border-color:var(--modal-border-dark, #222)}}@media (prefers-contrast: high){.update-banner{border-width:2px;box-shadow:0 4px 16px #000c}.update-banner-progress-bar{border:1px solid var(--text-primary, #ffffff)}}
