@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@300;400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,sans-serif;margin:0}code{font-family:IBM Plex Mono,monospace}*,button,input,select,textarea{font-family:IBM Plex Sans,sans-serif}.dropdown-item,.dropdown-menu div,[id$=-dropdown-container] div{font-size:12px!important;line-height:1.2!important;padding:6px 12px!important}.dropdown-menu,[id$=-dropdown-container]{padding:3px 0!important}[id$=-dropdown-button],button.dropdown-toggle{font-size:13px!important;height:22px!important;line-height:1.2!important;padding:2px 8px!important}.checkbox-container,.filter-checkbox-container label,.filter-dropdown-menu,[id=filter-dropdown-container] label{font-size:12px!important;line-height:1.2!important}.dropdown-item:hover{background-color:#f5f5f5!important}.chat-container{background:linear-gradient(135deg,#3a3a3a,#4a4a4a 50%,#555);color:#fff;display:flex;flex-direction:column;font-family:IBM Plex Sans,sans-serif;height:100%;width:100%}.chat-header{gap:15px;padding:20px 20px 15px}.chat-header,.header-icon{align-items:center;display:flex}.header-icon,.icon-box{justify-content:center}.icon-box{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:10px;display:flex;font-size:24px;height:50px;width:50px}.header-content{flex:1 1}.header-title{color:#fff;font-size:24px;font-weight:700;letter-spacing:-.5px;margin:0 0 6px}.header-subtitle{color:#fffc;font-size:14px;font-weight:400;margin:0}.chat-messages{flex:1 1;min-height:0;overflow-y:auto;padding:0 30px 0 20px}.welcome-section{display:flex;flex-direction:column;gap:21px;margin-top:28px;padding-top:14px}.welcome-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:10px;padding:17px}.welcome-message p{color:#fffffff2;font-size:11px;line-height:1.6;margin:0}.messages-list{gap:11px;padding:14px 0}.message,.messages-list{display:flex;flex-direction:column}.message{gap:3px}.message-content{border-radius:10px;font-size:10px;line-height:1.5;padding:11px 14px}.user-message .message-content{background:#fff;border:1px solid #e0e0e0;color:#000;margin-left:28px}.user-message .message-content strong{color:#000;margin-right:6px}.ai-message .message-content{background:#1a1a1a;border:1px solid #333;color:#fff;margin-right:28px}.ai-message .message-content strong{color:#fff;margin-right:6px}.message-timestamp{color:#fff9;font-size:8px;margin-left:14px}.chat-input-section{padding:8px 30px 12px 20px}.input-container{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff40;border-radius:10px;display:flex;flex-direction:row;gap:6px;padding:4px 12px;position:relative;transition:all .3s ease;width:100%}.input-container:focus-within{background:#ffffff26;border-color:#fff6;box-shadow:0 2px 12px #ffffff1a}.input-field-container{align-items:center;background:#0000;border:none;display:flex;flex:1 1;padding:0}.button-container{align-items:center;display:flex;flex-shrink:0;gap:8px}.chat-input{background:#0000;border:none;color:#fff;font-family:inherit;font-size:10px;line-height:16px;max-height:80px;min-height:16px;outline:none;overflow-wrap:break-word;overflow-y:auto;padding:2px 0;resize:none;white-space:pre-wrap;width:100%}.chat-input::placeholder{color:#ffffff80;font-weight:400}.send-button{align-items:center;background:linear-gradient(135deg,#505050,#404040);border:1px solid #fff3;border-radius:10px;box-shadow:0 1px 3px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:10px;font-weight:600;height:24px;justify-content:center;letter-spacing:.2px;min-width:45px;padding:0 12px;transition:all .2s ease}.send-button:not(:disabled):hover{background:linear-gradient(135deg,#606060,#505050);box-shadow:0 2px 8px #fff3;transform:translateY(-1px)}.send-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.4;transform:none}.send-button:active:not(:disabled){box-shadow:0 1px 3px #0000004d;transform:translateY(0)}@media (max-width:768px){.chat-container{height:100vh}.chat-header{padding:30px 20px 20px}.header-title{font-size:28px}.header-subtitle{font-size:16px}.chat-messages{padding:0 20px}.chat-input-section{padding:12px 12px 16px}.input-container{gap:6px;padding:6px 10px}.chat-input{font-size:10px;min-height:16px}.send-button{font-size:10px;height:24px;min-width:45px;padding:0 10px}.voice-button{height:24px;width:24px}.voice-button svg{height:12px;width:12px}.stop-recording-button-inline{height:24px;width:24px}.stop-recording-button-inline svg{height:12px;width:12px}.user-message .message-content{margin-left:20px}.ai-message .message-content{margin-right:20px}}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#ffffff80}.thinking-dots,.thinking-text{display:inline}.thinking-dots span{animation:thinking-fade 1.5s infinite;opacity:0}.thinking-dots .dot1{animation-delay:0s}.thinking-dots .dot2{animation-delay:.3s}.thinking-dots .dot3{animation-delay:.6s}@keyframes thinking-fade{0%,20%{opacity:0}40%,60%{opacity:1}80%,to{opacity:0}}.typing-cursor{animation:cursor-blink .8s infinite;color:#fffc;display:inline;font-weight:300}@keyframes cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.input-wrapper{flex:1 1;position:relative}.input-recording-progress{background-color:#fff3;border-radius:0 0 20px 20px;bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.input-progress-fill{background-color:#fff;height:100%;transition:width .1s ease}.input-recording-timer{background:#0000004d;border-radius:6px;color:#ffffffe6;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;padding:4px 8px;pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.stop-recording-button-inline{align-items:center;background:#ffffff26;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.stop-recording-button-inline:hover{background-color:#ffffff40;border-color:#fff6;transform:translateY(-1px)}.stop-recording-button-inline:active{transform:translateY(0)}.stop-recording-button-inline svg{height:12px;width:12px}.voice-button{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.voice-button:hover{background-color:#fff3;border-color:#ffffff4d;transform:translateY(-1px)}.voice-button:active{transform:translateY(0)}.voice-button svg{height:12px;width:12px}.voice-error-banner{background-color:#ff646433;border:1px solid #ff64644d;border-radius:8px;color:#fcc;font-size:13px;margin-top:8px;padding:8px 16px}@media (max-width:768px){.input-recording-timer{font-size:10px;right:8px}.stop-recording-button-inline svg{height:18px;width:18px}}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{background-color:#333;border-radius:4px;color:#fff;font-size:14px;line-height:1.4;outline:0;position:relative;transition-property:transform,visibility,opacity;white-space:normal}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{border-top-color:initial;border-width:8px 8px 0;bottom:-7px;left:0;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:initial;border-width:0 8px 8px;left:0;top:-7px;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-left-color:initial;border-width:8px 0 8px 8px;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{border-right-color:initial;border-width:8px 8px 8px 0;left:-7px;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{color:#333;height:16px;width:16px}.tippy-arrow:before{border-color:#0000;border-style:solid;content:"";position:absolute}.tippy-content{padding:5px 9px;position:relative;z-index:1}.enhanced-metrics-overlay{align-items:center;background-color:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.enhanced-metrics-container,.enhanced-metrics-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;direction:ltr;height:85vh;max-height:800px;max-width:1200px;overflow:hidden;transform:none;width:90vw;writing-mode:initial}.enhanced-metrics-header{align-items:center;background:#000;color:#fff;direction:ltr;display:flex;justify-content:space-between;padding:12px 20px;writing-mode:initial}.enhanced-metrics-header h1,.enhanced-metrics-header h2{direction:ltr;font-size:18px;font-weight:600;margin:0;transform:none;writing-mode:initial}.close-button{align-items:center;background:none!important;border:1px solid #fff!important;border-radius:50%;box-shadow:0 1px 4px #0003;color:#fff!important;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:32px;justify-content:center;opacity:1;transition:all .2s ease;visibility:visible;width:32px}.close-button:hover{background:#333;border-color:#fff;box-shadow:0 4px 12px #0006;color:#fff;transform:scale(1.1)}.enhanced-metrics-content{direction:ltr;display:flex;height:calc(85vh - 56px);transform:none;writing-mode:initial}.metrics-sidebar{background:#f8f9fa;border-right:1px solid #e9ecef;display:flex;flex-direction:column;width:300px}.metrics-header{border-bottom:1px solid #e9ecef;padding:15px}.metrics-header h2{color:#2c3e50;font-size:16px;margin:0 0 10px}.header-buttons{display:flex;flex-direction:column;gap:8px}.new-metric-button{background:#1a1a1a;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:8px;transition:background-color .2s;width:100%}.new-metric-button:hover:not(:disabled){background:#333}.new-metric-button:disabled{background:#6c757d;cursor:not-allowed}.metrics-list{border:none;box-shadow:none;flex:1 1;outline:none;overflow-y:auto;padding:12px}.metrics-section{margin-bottom:20px}.section-header{align-items:center;display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 6px}.default-metrics-header{color:#0056b3}.custom-metrics-header{color:#6f42c1}.section-description{color:#6c757d;font-size:11px;font-style:normal;margin-bottom:10px}.metric-item{background:#fff;border:1px solid #e9ecef;border-radius:4px;cursor:pointer;margin-bottom:8px;padding:10px;position:relative;transition:all .2s}.metric-item:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff26}.metric-item.active{background:#f8f9ff;border-color:#007bff;box-shadow:0 2px 8px #007bff33}.metric-item.has-warning{border-left:3px solid #ffc107}.metric-item.has-warning .metric-formula{color:#856404}.numeric-warning-badge{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.section-header.collapsible{align-items:center;border-radius:4px;display:flex;gap:6px;margin:0 0 4px;padding:8px 4px;transition:background-color .15s ease}.section-header.collapsible:hover{background-color:#f0f0f0}.collapse-icon{color:#666;font-size:10px;width:12px}.parameters-section{border-top:1px solid #e9ecef;margin-top:16px;padding-top:16px}.parameter-item{background:#fff!important;border:1px solid #e9ecef!important;border-radius:4px!important}.parameter-item:hover{border-color:#007bff!important;box-shadow:0 2px 8px #007bff26}.parameter-item.active{background:#f8f9ff!important;border-color:#007bff!important;box-shadow:0 2px 8px #28a74533}.parameter-name .param-prefix{color:#28a745;font-weight:700;margin-right:1px}.parameter-value{color:#28a745!important;font-family:IBM Plex Sans,sans-serif}.calculate-all-button{background:#1a1a1a!important}.calculate-all-button:hover:not(:disabled){background:#333!important}.calculate-all-button:disabled{background:#6c757d!important;cursor:not-allowed}.calculate-result{border-radius:4px;font-size:13px;font-weight:500;margin-bottom:12px;padding:8px 12px}.calculate-result.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.calculate-result.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.default-metric{border-left:4px solid #0056b3}.custom-metric{border-left:4px solid #6f42c1}.metric-name{align-items:center;color:#2c3e50;display:flex;font-size:13px;font-weight:600;justify-content:space-between;margin-bottom:4px}.metric-badge{border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.default-badge{background:#e3f2fd;border:1px solid #bbdefb;color:#0056b3}.custom-badge{background:#f3e5f5;border:1px solid #e1bee7;color:#6f42c1}.metric-description{color:#6c757d;font-size:11px;line-height:1.3;margin-bottom:6px}.metric-formula{background:#f8f9fa;border-radius:3px;color:#666;font-family:IBM Plex Mono,monospace;font-size:10px;overflow:hidden;padding:4px 6px;text-overflow:ellipsis;white-space:nowrap;word-break:break-word}.no-metrics-message{background:#e0e1e2;border:none;border-radius:6px;color:#6c757d;font-size:12px;font-style:normal;padding:20px;text-align:center}.no-model-message{background:#0000!important;border:none!important;box-shadow:none!important;outline:none!important}.error-message{background:#f8d7da;margin-bottom:15px;padding:10px}.metrics-main{background:#fff;flex:1 1;overflow-y:auto;padding:20px}.no-selection{align-items:center;color:#6c757d;display:flex;font-size:14px;height:100%;justify-content:center}.metric-detail-view{margin:0;max-width:none}.metric-header{border-bottom:1px solid #f0f0f0;margin-bottom:20px;padding-bottom:15px}.metric-title-section{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:10px}.metric-title-section h2{color:#333;font-size:22px;font-weight:700;line-height:1.2;margin:0}.metric-badges{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.metric-formula-section{margin-bottom:20px}.metric-formula-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 10px}.components-list{margin-top:12px}.components-list h4{color:#495057;font-size:13px;font-weight:600;margin:0 0 8px}.components{display:flex;flex-wrap:wrap;gap:6px}.component-tag{background:#f8f9fa;border:1px solid #dee2e6;border-radius:12px;color:#495057;font-size:11px;font-weight:500;padding:4px 8px}.inference-section{background:#fff8e7;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:16px;padding:12px}.inference-section h3{align-items:center;color:#d63384;display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 8px}.inference-info{line-height:1.6}.inference-info p{color:#495057;font-size:12px;margin:4px 0}.inference-info strong{color:#333}.default-metric-note{background:#e7f3ff;border-left:4px solid #06c;border-radius:4px;color:#06c;font-size:14px;margin-top:15px;padding:12px 16px}.error,.loading{font-size:14px;padding:16px;text-align:center}.error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;margin-bottom:16px}.metric-detail h2{color:#333;font-size:28px;font-weight:600;margin:0 0 16px}.metric-info-section{margin-bottom:24px}.metric-info-section h3{color:#333;font-size:20px;font-weight:600;margin:0 0 12px}.formula-display{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#333;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.3;min-height:30px;padding:8px 10px;white-space:pre-wrap;word-break:break-word}.context-property{align-items:flex-start;display:flex;gap:8px;margin-bottom:12px}.context-property strong{color:#333;min-width:80px}.context-value{color:#666}.conditions-list{flex:1 1}.condition-item{align-items:center;display:flex;gap:8px;margin-bottom:8px}.condition-category{color:#333;font-weight:500}.condition-separator{color:#666}.condition-instances{display:flex;flex-wrap:wrap;gap:4px}.type-bubble{border-radius:16px;display:inline-block;font-size:12px;font-weight:500;margin-bottom:4px;margin-right:8px;padding:4px 12px}.context-empty{background-color:#f5f5f5;border-radius:4px;color:#666;font-size:14px;font-style:normal;padding:4px 8px}.metric-actions{border-top:1px solid #e0e0e0;margin-top:24px;padding-top:20px}.action-buttons{display:flex;gap:8px;margin-bottom:10px}.edit-button{background:#1a1a1a;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;max-width:130px;padding:8px 16px;transition:transform .2s,box-shadow .2s}.edit-button:hover:not(:disabled){box-shadow:0 4px 12px #0000004d;transform:translateY(-1px)}.edit-button:disabled{cursor:not-allowed;opacity:.6}.calculate-button{background:#1a1a1a;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;max-width:150px;padding:8px 16px;transition:transform .2s,box-shadow .2s}.calculate-button:hover:not(:disabled){box-shadow:0 4px 12px #0000004d;transform:translateY(-1px)}.calculate-button:disabled{cursor:not-allowed;opacity:.6}.delete-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;max-width:130px;padding:8px 16px;transition:transform .2s,box-shadow .2s}.delete-button:hover:not(:disabled){box-shadow:0 4px 12px #dc35454d;transform:translateY(-1px)}.delete-button:disabled{cursor:not-allowed;opacity:.6}.metric-form{margin:0;max-width:none;padding:0}.metric-form,.metric-form h2{direction:ltr;transform:none;writing-mode:initial}.metric-form h2{color:#333;font-size:20px;font-weight:600;margin:0 0 20px;text-align:left}.form-group{display:flex;flex-direction:column;margin-bottom:16px}.form-group,.form-group label{direction:ltr;transform:none;writing-mode:initial}.form-group label{color:#333;display:block;font-size:12px;font-weight:600;margin-bottom:5px;text-align:left}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #e1e5e9;border-radius:4px;box-sizing:border-box;color:#333;font-size:12px;line-height:1.4;padding:8px 12px;transform:none;transition:border-color .2s,box-shadow .2s;width:100%}.form-group textarea{font-family:inherit;min-height:60px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.formula-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none;transform:none}.formula-input-container,.formula-input-wrapper{direction:ltr;position:relative;transform:none;width:100%;writing-mode:initial}.formula-input{background:#fff;border:1px solid #e1e5e9;border-radius:4px;box-sizing:border-box;color:#333;direction:ltr;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.4;min-height:70px;padding:8px 12px;resize:vertical;text-align:left;transform:none;transition:border-color .2s,box-shadow .2s;width:100%;writing-mode:initial}.formula-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.inline-suggestion{word-wrap:break-word;background:#0000;border:none;color:#0000;direction:ltr;font-family:IBM Plex Mono,monospace;font-size:12px;left:14px;line-height:1.4;margin:0;padding:0;pointer-events:none;position:absolute;right:12px;text-align:left;top:10px;transform:none;white-space:pre-wrap;writing-mode:initial;z-index:1}.existing-text{color:#0000}.suggestion-text{background-color:#99999926;border-radius:2px;color:#999;padding:1px 2px}.formula-help{color:#6c757d;font-size:10px;font-style:normal;margin-top:3px;text-align:left}.form-actions,.formula-help{direction:ltr;transform:none;writing-mode:initial}.form-actions{border-top:1px solid #e9ecef;display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:15px}.cancel-btn,.submit-btn{border:none;border-radius:4px;cursor:pointer;direction:ltr;font-size:12px;font-weight:500;min-width:100px;padding:8px 16px;transform:none;writing-mode:initial}.submit-btn{background:#1a1a1a;color:#fff;transition:background-color .2s}.submit-btn:hover:not(:disabled){background:#333}.submit-btn:disabled{background:#6c757d;cursor:not-allowed}.cancel-btn{background:#dc3545;color:#fff;transition:background-color .2s}.cancel-btn:hover{background:#c82333}@media (max-width:768px){.enhanced-metrics-content{flex-direction:column}.metrics-sidebar{max-height:200px;width:100%}.metrics-main{flex:1 1}.form-actions{flex-direction:column}.cancel-btn,.submit-btn{max-width:none}}.calculation-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin-top:20px;padding:12px}.calculation-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 10px}.model-selection{margin-bottom:12px}.model-selection label{color:#495057;display:block;font-size:12px;font-weight:500;margin-bottom:5px}.model-select{background:#fff;border:1px solid #ced4da;border-radius:3px;color:#495057;font-size:12px;padding:6px 8px;width:100%}.model-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.calculation-note{margin-top:8px;text-align:center}.calculation-note small{color:#6c757d;font-size:10px;font-style:normal}.draft-notification{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;margin:10px 0;padding:12px}.draft-notification h4{font-size:14px;font-weight:600;margin:0 0 5px}.draft-notification p{font-size:13px;margin:0 0 10px}.return-to-creation,.return-to-draft-btn{background:#ffc107;border:none;border-radius:4px;color:#212529;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:background-color .2s}.return-to-creation:hover,.return-to-draft-btn:hover{background:#e0a800}.draft-indicator{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#28a745;font-size:12px;font-weight:500;padding:4px 8px}.form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.form-header h2{color:#2c3e50;margin:0}.no-selection-content{padding:40px 20px;text-align:center}.no-selection-content h3{color:#2c3e50;margin-bottom:10px}.no-selection-content p{color:#6c757d;margin-bottom:20px}.chips-container{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;display:flex;flex-wrap:wrap;gap:6px;max-height:200px;min-height:50px;overflow-y:auto;padding:10px}.chips-help{color:#6c757d;font-size:12px;font-style:normal;margin-bottom:8px}.draggable-chip{border-radius:16px;box-shadow:0 1px 3px #0000001a;cursor:grab;display:inline-block;font-size:12px;font-weight:500;line-height:1;padding:5px 10px;transition:all .2s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.draggable-chip:active{cursor:grabbing;transform:scale(.95)}.draggable-chip:hover{box-shadow:0 2px 6px #00000026;transform:translateY(-2px)}.account-chip{border:none;color:#2e7d32}.account-chip,.account-chip:hover{background:#e8f5e9}.parameter-chip{align-items:center;background:#007bff;border:1px solid #0056b3;color:#fff;display:flex;gap:6px}.parameter-chip:hover{background:#0056b3}.editable-chip{cursor:pointer;position:relative}.editable-chip:hover{box-shadow:0 2px 8px #007bff66}.chip-value{font-size:10px;font-weight:400;opacity:.85}.no-chips{color:#999;font-size:12px;font-style:normal;padding:12px;text-align:center;width:100%}.formula-input.drag-over{background-color:#f0fff4!important;border-color:#28a745!important;box-shadow:0 0 0 3px #28a7451a!important}.chips-container::-webkit-scrollbar{height:8px;width:8px}.chips-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.chips-container::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.chips-container::-webkit-scrollbar-thumb:hover{background:#a0aec0}.formula-preview-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:16px}.formula-preview-section>label{color:#2d3748;display:block;font-weight:600;margin-bottom:12px}.preview-loading{color:#718096;font-size:12px;font-weight:400}.preview-error{background:#fff5f5;border:1px solid #fc8181;border-radius:6px;color:#c53030;font-size:13px;padding:10px 14px}.preview-table{background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.preview-table table{border-collapse:collapse;width:100%}.preview-table td,.preview-table th{border-bottom:1px solid #e2e8f0;padding:10px 14px;text-align:left}.preview-table th{background:#f7fafc;color:#4a5568;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.preview-table td{color:#2d3748;font-size:14px}.preview-table tr:last-child td{border-bottom:none}.preview-note,.preview-table tr:hover td{background:#f7fafc}.preview-note{border-top:1px solid #e2e8f0;color:#718096;font-size:11px;padding:8px 14px;text-align:right}.preview-empty{color:#a0aec0;font-size:13px;font-style:normal;padding:20px;text-align:center}.filter-conditions-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;flex-direction:column;gap:8px;padding:12px}.filter-condition-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.filter-dimension-select,.filter-logic-select,.filter-operator-select{background:#fff;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:13px;padding:6px 10px}.filter-dimension-select{min-width:120px}.filter-operator-select{min-width:70px}.filter-value-input{border:1px solid #dee2e6;border-radius:4px;flex:1 1;font-size:13px;max-width:200px;min-width:100px;padding:6px 10px}.filter-dimension-select:focus,.filter-operator-select:focus,.filter-value-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.filter-remove-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;padding:0;transition:background .2s;width:24px}.filter-remove-btn:hover{background:#c82333}.filter-add-btn{align-self:flex-start;background:#fff;border:1px dashed #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.filter-add-btn:hover{background:#f8f9ff;border-color:#007bff;color:#007bff}.filter-logic-selector{align-items:center;border-top:1px solid #e9ecef;color:#6c757d;display:flex;font-size:12px;gap:8px;margin-top:4px;padding-top:8px}.filter-logic-select{font-size:12px;padding:4px 8px}.filter-example{background:#e9ecef;border-radius:4px;color:#6c757d;font-size:12px;padding:8px;text-align:center}.filter-help-badge{background:#e9ecef;border-radius:50%;color:#6c757d;cursor:help;font-size:11px;height:16px;justify-content:center;margin-left:6px;width:16px}.filter-badge,.filter-help-badge{align-items:center;display:inline-flex}.filter-badge{background:#e3f2fd;border-radius:12px;color:#1565c0;font-size:12px;gap:4px;padding:4px 10px}.dimension-filter-panel{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001f;display:flex;flex-direction:column;margin:20px 0 0 20px;max-height:calc(100vh - 120px);min-width:320px;overflow:hidden;position:relative;width:320px;z-index:1}.dimension-filter-panel-content{background:#0000;flex:1 1;overflow-y:auto;padding:15px}.config-section:last-child{margin-bottom:0}.dimension-list{box-sizing:border-box;width:100%}.dimension-list.drop-zone.drag-over{background:#4a90e226}.dimension-item{border-radius:4px;cursor:move;font-size:13px;padding:8px 12px}.dimension-item.available{background-color:#f8f9fa;border:1px solid #dee2e6}.dimension-item.available:hover{background-color:#e9ecef;border-color:#adb5bd}.dimension-item.selected{background-color:#0d6efd;border:1px solid #0a58ca}.dimension-item.selected:hover{background-color:#0b5ed7}.dimension-item .dim-check{color:#28a745;font-weight:700}.dimension-item .remove-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:20px;justify-content:center;padding:0;transition:background-color .2s ease;width:20px}.dimension-item .remove-btn:hover{background-color:#fff3}.empty-zone{color:#adb5bd;font-size:12px;font-style:normal}.filter-bar{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;gap:12px;padding:12px}.filter-label{font-size:13px;margin:0}.filter-dropdown{border:1px solid #ced4da;border-radius:4px;font-size:13px;min-width:120px;padding:6px 12px;text-align:left;transition:all .2s ease}.filter-menu{box-shadow:0 4px 12px #00000026}.clear-filters-btn{background-color:#6c757d;border:none;border-radius:4px;color:#fff;padding:6px 12px;transition:background-color .2s ease}.clear-filters-btn:hover{background-color:#5a6268}.table-view-container{background:#0000;display:flex;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;margin-top:40px;position:relative;z-index:1}.table-config-panel{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001f;display:flex;flex-direction:column;margin:20px 0 0 20px;max-height:calc(100vh - 120px);min-width:320px;overflow:hidden;width:320px}.config-panel-header{background-color:#fff;border-bottom:1px solid #e9ecef;flex-shrink:0;padding:15px 15px 0}.config-panel-content{background:#0000;flex:1 1;overflow-y:auto;padding:15px}.config-panel-dropzones{background:#0000;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #0000001a;flex:0 0 auto;overflow-y:visible;padding:15px}.config-section{flex:0 0 auto;margin-bottom:20px}.dimension-list{background:#e6e7e8;border:none;border-radius:8px;display:flex;flex-wrap:wrap;gap:6px;height:auto!important;min-height:40px;padding:6px;position:static!important;transition:all .2s ease}.dimension-list.scrollable{background:#e0e1e2;max-height:200px;overflow-y:auto}.dimension-list.drop-zone{background:#e0e1e2;border:none;height:auto!important;position:static!important}.dimension-list:hover{background:#e0e1e2}.dimension-list.drop-zone:hover{background:#4a90e226}.dimension-list.drop-zone.drag-over{background:#4a90e233;box-shadow:0 0 0 3px #4a90e226}.dimension-list .empty-zone{width:100%}.dimension-item{align-items:center;border-radius:14px;box-sizing:border-box;cursor:grab;display:flex;font-size:12px;font-weight:500;height:28px;justify-content:space-between;line-height:1.2;margin:0;padding:3px 10px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:calc(50% - 3px)}.dimension-item:active{cursor:grabbing}.dimension-item.available{background-color:#fff;border:none;color:#495057;padding-right:28px}.dimension-item.available:hover{background-color:#f8f9fa;box-shadow:0 2px 4px #00000014;transform:translateY(-1px)}.dim-check{align-items:center;background:#e6f4ea;border-radius:50%;color:#1e7e34;display:inline-flex;font-size:0;font-weight:700;height:16px;justify-content:center;line-height:1;margin-left:8px;width:16px}.dim-check:before{content:"\2714";font-size:12px}.dimension-item.available .dim-check{position:absolute;right:6px;top:50%;transform:translateY(-50%)}.dimension-item.selected{background-color:#000;border:none;color:#fff;padding-right:28px}.dimension-item.selected:hover{background-color:#222;box-shadow:0 2px 6px #00000040;transform:translateY(-1px)}.remove-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:16px;justify-content:center;position:absolute;right:6px;top:50%;transform:translateY(-50%);transition:background-color .2s ease;width:16px}.remove-btn:hover{background:#ffffff4d}.empty-zone{color:#6c757d;font-size:11px;padding:12px;text-align:center}.table-content{display:flex;flex:1 1;flex-direction:column;margin-top:20px;max-height:calc(100vh - 60px);min-height:0;overflow:hidden;padding:0}.leaf-cell{background-color:#fff!important}.leaf-cell:hover{background-color:#f8f9fa!important}.aggregate-cell{background-color:#eef1f3!important}.aggregate-cell:hover{background-color:#dee2e6!important}.calculated-cell{background-color:#e9ecef!important}.calculated-cell:hover{background-color:#dee2e6!important}.calc-cell{background-color:#4caf5026!important;cursor:not-allowed!important}.calc-cell:hover{background-color:#4caf5033!important}.origin-calc-leaf{background-color:#34b45061!important;color:#0f3214!important;cursor:not-allowed!important}.origin-calc-leaf:hover{background-color:#34b4507a!important}.origin-solid-leaf{background-color:#fffbf0!important}.origin-solid-leaf:hover{background-color:#fff3cd!important}.total-cell{background-color:#dee2e6!important}.total-cell:hover{background-color:#ced4da!important}.editable-cell{cursor:pointer;position:relative}.editable-cell:hover{opacity:.9}.cell-input{background:#0000;border:none;border-radius:0;box-sizing:border-box;font-family:inherit;font-size:inherit;margin:0;max-width:100%;outline:none;padding:0;text-align:right;width:100%}.data-cell.editing{overflow:hidden;position:relative}.data-cell.editing .cell-input{bottom:0;left:0;padding:6px 10px;position:absolute;right:0;top:0}.cell-input::selection{background:#0000}.data-cell.editing:not(.multi-selected){box-shadow:inset 0 0 0 2px #007acc;outline:none}.data-cell.editing.multi-selected{box-shadow:none;outline:none}.data-cell.selected:not(.multi-selected){box-shadow:inset 0 0 0 2px #007acc}.data-cell.selected.multi-selected{box-shadow:none}.data-cell:focus,.pivot-table-container:focus{outline:none}.error-message,.loading-message,.no-model-message{border-radius:8px;font-size:14px;margin:20px;padding:20px;text-align:center}.no-model-message{background-color:#f8f9fa;border:1px solid #dee2e6;color:#6c757d}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.loading-message{color:#007bff}.pivot-table-container{background:#0000;border:none;border-radius:0;box-shadow:none;flex:1 1;margin:0 20px;max-height:none;min-height:0;overflow-x:auto;overflow-y:auto;position:relative;z-index:1}.pivot-table{border-collapse:initial;border-spacing:0;font-size:12px;min-width:100%;width:max-content}.pivot-table td:not(.row-dimension-cell),.pivot-table th:not(.row-header){min-width:100px}.pivot-table td,.pivot-table th{border-bottom:1px solid #e9ecef;border-right:1px solid #e9ecef;max-width:150px;overflow:hidden;padding:6px 10px;text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.pivot-table th{border-bottom:1px solid #333;border-right:1px solid #333}.pivot-table thead tr:first-child th{border-top:1px solid #333}.pivot-table th:first-child{border-left:1px solid #333}.pivot-table td:first-child,.pivot-table th:first-child{border-left:1px solid #e9ecef}.pivot-table thead tr:first-child th{border-top:1px solid #e9ecef}.pivot-table th{background-color:#1a1a1a;box-shadow:0 2px 4px #00000026}.pivot-table th,.row-header{color:#fff;font-weight:700;position:sticky;top:0;z-index:10}.row-header{background-color:#1a1a1a!important;border-right:1px solid #333!important;box-sizing:border-box}.column-resize-handle{background:#0000;bottom:0;cursor:col-resize;position:absolute;right:0;top:0;width:6px;z-index:40}.column-resize-handle:hover{background:#4a90e280}.row-header{position:relative}.row-header:empty{background-color:#1a1a1a!important;box-shadow:none}.row-header[style*=left]{z-index:30!important}.column-header{background-color:#1a1a1a!important;color:#fff;font-weight:700;min-width:100px;text-align:center;z-index:10!important}.row-dimension-cell{background-color:#fff;border-right:1px solid #dee2e6;box-sizing:border-box;color:#495057;font-weight:400;position:sticky;z-index:20}.row-dimension-cell.total-header{font-weight:600!important}.aggregate-row{background-color:#f1f3f5!important}.data-cell{background:#0000;color:#212529;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;text-align:right!important}.data-cell:hover{background:#4a90e21a}.column-header.multi-selected,.data-cell.multi-selected,.row-dimension-cell.multi-selected,.row-header.multi-selected{background:#4a90e240!important}.data-cell.multi-selected{position:relative;z-index:25!important}.column-header.multi-selected:hover,.data-cell.multi-selected:hover,.row-dimension-cell.multi-selected:hover,.row-header.multi-selected:hover{background:#4a90e259!important}.multi-selected.selection-top{border-top:2px solid #4a90e2!important}.multi-selected.selection-bottom{border-bottom:2px solid #4a90e2!important}.multi-selected.selection-left{border-left:2px solid #4a90e2!important}.multi-selected.selection-right{border-right:2px solid #4a90e2!important}.pivot-table tbody tr:nth-child(2n) .data-cell{background:#00000005}.pivot-table tbody tr:nth-child(2n) .data-cell:hover{background:#4a90e226}@media (max-width:768px){.table-view-container{flex-direction:column}.table-config-panel{max-height:300px;width:100%}.config-section{margin-bottom:12px}.dimension-list{min-height:35px}.dimension-item{width:100%}.pivot-table{font-size:11px}.pivot-table td,.pivot-table th{padding:4px 6px}}.filter-bar{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001f;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;margin:0 20px 10px;min-height:45px;padding:12px 20px;position:relative;z-index:50}.filter-dropdown-container{align-items:center;display:flex;gap:8px}.filter-label{font-weight:500;white-space:nowrap}.filter-dropdown,.filter-label{color:#495057;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px}.filter-dropdown{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;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='%23495057' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;height:32px;min-width:100px;outline:none;padding:5px 32px 5px 10px;transition:all .15s ease}.filter-menu{font-size:12px}.filter-dropdown:hover{background-color:#f8f9fa;border-color:#adb5bd}.filter-dropdown:focus{background-color:#fff;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.filter-dropdown option{background-color:#fff;color:#495057;padding:4px}.clear-filters-btn{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;color:#dc3545;cursor:pointer;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;font-weight:500;height:32px;margin-left:auto;padding:6px 14px;transition:all .15s ease}.clear-filters-btn:hover{background-color:#dc3545;border-color:#dc3545;color:#fff}.clear-filters-btn:active{transform:scale(.98)}.formula-tree-tooltip{background:#fff;border:1px solid silver;border-radius:4px;box-shadow:0 4px 20px #00000040;display:flex;flex-direction:column;font-family:Segoe UI,IBM Plex Sans,-apple-system,sans-serif;font-size:12px;max-height:400px;max-width:700px;min-width:450px;overflow:hidden;position:fixed;z-index:10000}.tooltip-header{align-items:center;background:#000;border-bottom:none;display:flex;justify-content:space-between;padding:8px 16px}.tooltip-title{color:#fff;font-size:13px;font-weight:600}.tooltip-close{align-items:center;background:none;border:1px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:26px;justify-content:center;line-height:1;padding:0;transition:background .15s,border-color .15s;width:26px}.tooltip-close:hover{background:#ffffff26;border-color:#fff;color:#fff}.tooltip-content{flex:1 1;overflow:auto;padding:0}.tree-container{max-height:300px;overflow:auto}.tooltip-empty,.tooltip-error,.tooltip-loading{color:#666;padding:20px;text-align:center}.tooltip-error{color:#c00}.tree-table{border-collapse:collapse;font-size:12px;width:100%}.tree-table thead{position:sticky;top:0;z-index:1}.header-cell{background:linear-gradient(180deg,#f5f5f5 0,#e8e8e8);border-bottom:1px solid silver;border-right:1px solid #d0d0d0;color:#333;font-size:12px;font-weight:600;padding:6px 8px;text-align:left;white-space:nowrap}.header-cell:last-child{border-right:none}.element-header{width:35%}.info-header{width:25%}.value-header{text-align:left;width:15%}.location-header{width:25%}.tree-row{border-bottom:1px solid #e8e8e8}.tree-row:hover{background:#e8f4fc}.tree-row.root-row{background:#f0f7ff;font-weight:500}.tree-row.root-row:hover{background:#e0efff}.tree-cell{border-right:1px solid #e8e8e8;padding:5px 8px;vertical-align:middle}.tree-cell:last-child{border-right:none}.element-cell{white-space:nowrap}.element-wrapper{gap:4px}.element-wrapper,.expand-toggle{align-items:center;display:inline-flex}.expand-toggle{font-size:8px;height:12px;justify-content:center;width:12px}.expand-toggle:hover{background:#d0d0d0;border-radius:2px;color:#333}.expand-placeholder{display:inline-block;width:12px}.element-name{color:#333}.element-name.parameter{color:#06c}.info-cell{color:#666;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.value-cell{color:#333;text-align:left}.location-cell{color:#06c;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-row.depth-1 .element-cell{background:#0066cc08}.tree-row.depth-2 .element-cell{background:#0066cc0f}.tree-row.depth-3 .element-cell{background:#0066cc17}.tree-row.depth-4 .element-cell{background:#0066cc1f}.tree-row.depth-5 .element-cell{background:#0066cc26}.tree-container::-webkit-scrollbar{height:8px;width:8px}.tree-container::-webkit-scrollbar-track{background:#f0f0f0}.tree-container::-webkit-scrollbar-thumb{background:silver;border-radius:4px}.tree-container::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.tree-row.selected{background:#cce5ff}.tree-row.selected:hover{background:#b8daff}.chart-view-container{background:#0000;display:flex;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;margin-top:40px;overflow:hidden;position:relative;width:100%;z-index:1}.chart-view-container .no-model-message{align-items:center;color:#6c757d;display:flex;font-size:14px;height:100%;justify-content:center;width:100%}.chart-config-panel{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001f;display:flex;flex-direction:column;margin:20px 0 0 20px;max-height:calc(100vh - 120px);min-width:320px;overflow:hidden;width:320px}.chart-config-content{background:#0000;flex:1 1;overflow-y:auto;padding:15px}.config-section{margin-bottom:18px}.config-section h4{color:#495057;font-size:11px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.account-select,.chart-type-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;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='%23495057' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;height:32px;outline:none;padding:5px 32px 5px 10px;transition:all .15s ease;width:100%}.account-select:hover,.chart-type-select:hover{background-color:#f8f9fa;border-color:#adb5bd}.account-select:focus,.chart-type-select:focus{background-color:#fff;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.formula-preview{background:#e0e1e2;border-radius:8px;color:#495057;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.4;margin-top:8px;padding:8px 10px;word-break:break-word}.parameter-list{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto}.parameter-item{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;cursor:grab;display:flex;font-size:12px;justify-content:space-between;padding:6px 8px;transition:all .15s ease}.parameter-item:hover{background:#f0f4f8;border-color:#4a90e2}.parameter-item.used{background:#e8f5e9;border-color:#a5d6a7}.parameter-item.used .param-name{color:#2e7d32}.parameter-item.used .param-value{color:#555}.parameter-item:active{cursor:grabbing}.param-name{color:#5a6a7a;font-size:12px;font-weight:600}.param-value{color:#888;font-size:11px}.no-params-message{color:#6c757d;font-size:11px;font-style:normal;padding:12px;text-align:center}.axis-drop-zone{align-items:center;background:#e0e1e2;border:none;border-radius:8px;display:flex;justify-content:center;padding:8px 10px;transition:all .2s ease}.axis-drop-zone.drag-over{background:#4a90e233;box-shadow:0 0 0 3px #4a90e226}.axis-drop-zone.has-param{background:#e8f5e9;justify-content:flex-start}.drop-hint{color:#999;font-size:11px;font-style:normal}.axis-param{align-items:center;display:flex;justify-content:space-between;width:100%}.axis-param .param-name{color:#2e7d32;font-size:12px;font-weight:600}.axis-param .param-value{color:#555;font-size:11px;margin-left:auto;margin-right:8px}.remove-param{background:none;border:none;border-radius:4px;color:#888;cursor:pointer;font-size:14px;line-height:1;padding:0 2px;transition:all .15s ease}.remove-param:hover{background:#ffebee;color:#d32f2f}.axis-settings{display:flex;gap:12px;margin-top:8px}.axis-setting-item{align-items:center;display:flex;gap:6px}.axis-setting-item label{color:#666;font-size:10px;white-space:nowrap}.axis-setting-input{border:1px solid #ddd;border-radius:4px;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:11px;height:24px;padding:3px 6px;text-align:right;width:50px}.axis-setting-input:focus{border-color:#4a90e2;outline:none}.setting-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.setting-row label{color:#495057;font-size:12px;font-weight:500}.step-input{border:1px solid #dee2e6;border-radius:6px;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;height:32px;padding:5px 10px;text-align:right;width:70px}.step-input:focus{border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a;outline:none}.setting-info{color:#6c757d;font-size:11px;margin-top:4px;text-align:center}.chart-main-area{flex:1 1;overflow:auto;padding:20px;position:relative}.chart-main-area,.loading-overlay{align-items:center;display:flex;flex-direction:column;justify-content:center}.loading-overlay{background:#ffffffe6;bottom:0;left:0;position:absolute;right:0;top:0;z-index:10}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top-color:#4a90e2;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.loading-overlay .loading-text{color:#666;font-size:12px;margin-top:12px}.error-message{background:#ffebee;border:1px solid #ffcdd2;border-radius:6px;color:#c62828;font-size:12px;padding:16px 24px}.empty-state{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.empty-message{max-width:400px;padding:40px;text-align:center}.empty-message h3{color:#333;font-size:18px;font-weight:600;margin:0 0 12px}.empty-message p{color:#666;font-size:13px;line-height:1.6;margin:0}.heatmap-container{align-items:center;display:flex;flex-direction:column;max-width:900px;width:100%}.heatmap-title{align-items:baseline;display:flex;gap:16px;margin-bottom:20px}.heatmap-title .account-name{color:#1a1a1a;font-size:20px;font-weight:700}.heatmap-title .base-value{color:#666;font-size:14px}.heatmap-wrapper{align-items:center;display:flex;position:relative}.y-axis-label{color:#333;font-size:12px;font-weight:600;margin-top:35px;padding-right:12px;transform:rotate(180deg);writing-mode:vertical-rl}.heatmap-grid-wrapper{align-items:center;display:flex;flex-direction:column}.heatmap-grid-container{border-collapse:collapse;display:table}.heatmap-header-row{display:table-row}.heatmap-corner{min-width:70px;width:70px}.heatmap-col-header,.heatmap-corner{display:table-cell;height:40px;vertical-align:bottom}.heatmap-col-header{min-width:90px;padding-bottom:4px;text-align:center;width:90px}.heatmap-col-header .header-value{color:#333;font-size:11px;font-weight:600}.heatmap-col-header .header-percent{color:#888;font-size:9px}.heatmap-row{display:table-row}.heatmap-row-header{display:table-cell;height:48px;min-width:70px;padding-right:8px;text-align:right;vertical-align:middle;width:70px}.heatmap-row-header .header-value{color:#333;font-size:11px;font-weight:600}.heatmap-row-header .header-percent{color:#888;font-size:9px}.heatmap-cell{border:1px solid #fff6;color:#1a1a1a;cursor:pointer;display:table-cell;font-size:11px;font-weight:500;height:48px;min-width:90px;text-align:center;transition:opacity .1s ease;vertical-align:middle;width:90px}.heatmap-cell:hover{opacity:.85}.heatmap-cell.base-cell{border:2px solid #333;font-weight:700}.x-axis-label{color:#333;font-size:12px;font-weight:600;margin-left:70px;padding-bottom:8px;text-align:center}.heatmap-legend{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.legend-high,.legend-low{color:#666;font-size:10px}.legend-bar{background:linear-gradient(90deg,#ef5350,#ffc107,#66bb6a);border:none;border-radius:0;height:4px;width:120px}.add-filter-row{margin-bottom:10px}.add-filter-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 10px;width:100%}.add-filter-select:focus{border-color:#4a90e2;outline:none}.filter-dimension{background:#f8f9fa;border-radius:6px;margin-bottom:8px;padding:8px}.filter-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.filter-name{color:#333;font-size:12px;font-weight:600}.remove-filter-btn{background:none;border:none;color:#999;cursor:pointer;font-size:16px;line-height:1;padding:0 4px}.remove-filter-btn:hover{color:#d32f2f}.filter-values{display:flex;flex-wrap:wrap;gap:4px;max-height:120px;overflow-y:auto}.filter-value-item{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;font-size:11px;gap:4px;padding:2px 6px}.filter-value-item:hover{background:#e3f2fd;border-color:#4a90e2}.filter-value-item input[type=checkbox]{height:12px;margin:0;width:12px}.loading-values,.no-filters-hint{color:#999;font-size:11px;font-style:normal}.no-filters-hint{padding:8px;text-align:center}.aggregation-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:12px;padding:6px 10px;width:100%}.aggregation-select:focus{border-color:#4a90e2;outline:none}.sensitivity-context-menu{animation:contextMenuFadeIn .15s ease;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026,0 0 0 1px #0000000d;min-width:240px;overflow:hidden}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;flex-direction:column;gap:4px;padding:10px 14px}.context-param{color:#495057;font-family:IBM Plex Mono,monospace;font-size:11px}.context-menu-divider{background:#e9ecef;height:1px}.context-menu-item{align-items:flex-start;background:#fff;border:none;cursor:pointer;display:flex;flex-direction:column;padding:10px 14px;text-align:left;transition:background-color .1s ease;width:100%}.context-menu-item:hover:not(:disabled){background:#f0f4f8}.context-menu-item:disabled{cursor:not-allowed;opacity:.5}.context-menu-item:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.context-label{color:#1a1a1a;font-size:13px;font-weight:500}.context-hint{color:#6c757d;font-size:11px;margin-top:2px}.whatif-modal-overlay{align-items:center;animation:overlayFadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10001}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.whatif-modal{animation:modalSlideIn .2s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:90%;padding:24px;width:400px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.whatif-modal h3{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 8px}.modal-description{color:#6c757d;font-size:13px;line-height:1.5;margin:0 0 16px}.modal-params{background:#f8f9fa;border-radius:8px;margin-bottom:16px;padding:12px}.modal-param-row{align-items:center;display:flex;justify-content:space-between;padding:4px 0}.modal-param-row:not(:last-child){border-bottom:1px solid #e9ecef;margin-bottom:8px;padding-bottom:8px}.modal-param-name{color:#495057;font-family:IBM Plex Mono,monospace;font-size:12px}.modal-param-value{color:#1a1a1a;font-size:13px;font-weight:600}.modal-input-group{margin-bottom:20px}.modal-input-group label{color:#495057;display:block;font-size:12px;font-weight:500;margin-bottom:6px}.modal-input-group input{border:1px solid #dee2e6;border-radius:6px;box-sizing:border-box;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.modal-input-group input:focus{border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e226;outline:none}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-btn{border-radius:6px;cursor:pointer;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:500;padding:10px 20px;transition:all .15s ease}.modal-btn:disabled{cursor:not-allowed;opacity:.5}.modal-btn-cancel{background:#f8f9fa;border:1px solid #dee2e6;color:#495057}.modal-btn-cancel:hover:not(:disabled){background:#e9ecef}.modal-btn-confirm{background:#1a1a1a;border:none;color:#fff}.modal-btn-confirm:hover:not(:disabled){background:#333}.action-loading-overlay{align-items:center;background:#fffc;bottom:0;display:flex;flex-direction:column;gap:12px;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10002}.action-loading-overlay span{color:#495057;font-size:13px}.model-selection-list{background:#f8f9fa;border-radius:6px;display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;padding:8px}.model-checkbox-item{align-items:center;background:#fff;border-radius:4px;cursor:pointer;display:flex;font-size:12px;gap:8px;padding:6px 8px;transition:all .15s ease}.model-checkbox-item:hover{background:#e3f2fd}.model-checkbox-item input[type=checkbox]{height:14px;margin:0;width:14px}.model-checkbox-item span.selected{color:#2563eb;font-weight:600}.selected-count{color:#6c757d;font-size:11px;margin-top:8px;text-align:center}.no-common-hint,.no-models-hint{color:#999;font-size:11px;font-style:normal;padding:8px;text-align:center}.dimension-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:12px;padding:6px 10px;width:100%}.dimension-select:focus{border-color:#4a90e2;outline:none}.load-values-btn{background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:11px;padding:4px 8px}.load-values-btn:hover{background:#f0f0f0;border-color:#ccc}.comparison-chart-container{align-items:center;display:flex;flex-direction:column;max-width:800px;padding-bottom:20px;width:100%}.comparison-chart-title{align-items:baseline;display:flex;gap:12px;margin-bottom:16px}.comparison-chart-title .account-name{color:#1a1a1a;font-size:20px;font-weight:700}.comparison-chart-title .chart-subtitle{color:#666;font-size:14px}.comparison-line-chart{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014}.comparison-legend{background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:20px;padding:12px}.legend-item{align-items:center;display:flex;gap:6px}.legend-color{border-radius:2px;height:12px;width:12px}.legend-label{color:#333;font-size:12px}.context-percent{color:#888;font-size:11px;margin-left:4px}.context-result{color:#66bb6a;display:block;font-size:12px;margin-top:4px}.param-percent{color:#888;font-size:11px;margin-left:6px}.tornado-chart-container{align-items:center;background:#0000;display:flex;flex-direction:column;margin:20px;overflow-x:auto;padding:20px}.tornado-chart{display:block}.tornado-settings{align-items:center;display:flex;gap:16px}.tornado-params{max-height:200px;overflow-y:auto}.tornado-params .parameter-item{cursor:pointer;-webkit-user-select:none;user-select:none}.tornado-params .parameter-item.excluded{background:#f5f5f5;border-color:#ddd}.tornado-params .parameter-item.excluded .param-name,.tornado-params .parameter-item.excluded .param-value{color:#999}.tornado-params .parameter-item input[type=checkbox]{appearance:none;-webkit-appearance:none;background:#fff;border:2px solid #333;border-radius:3px;cursor:pointer;flex-shrink:0;height:16px;position:relative;width:16px}.tornado-params .parameter-item input[type=checkbox]:checked{background:#333;border-color:#333}.tornado-params .parameter-item input[type=checkbox]:checked:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:8px;left:4px;position:absolute;top:1px;transform:rotate(45deg);width:4px}@media (max-width:768px){.chart-view-container{flex-direction:column}.chart-config-panel{margin:10px;max-height:300px;width:100%}.parameter-item{width:100%}.whatif-modal{padding:20px;width:95%}}.d3-force-graph,.graph-container{shape-rendering:crispEdges}.graph-container{pointer-events:all}.grid-background{opacity:.5;pointer-events:none}.node{stroke-width:1.5;shape-rendering:crispEdges;cursor:pointer;transition:opacity .2s ease}.node:hover{stroke-width:2.5;cursor:pointer}.node.selected{stroke:#ffa726;stroke-width:4px}.node.dragging{stroke:#2196f3;stroke-width:3px}.node-label{text-anchor:middle;dominant-baseline:central;font-family:IBM Plex Sans,sans-serif;font-weight:500;pointer-events:none;text-rendering:optimizeLegibility;-webkit-user-select:none;user-select:none}.node-label.value-node{font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700}.link{stroke:#999;stroke-opacity:.6;stroke-width:2;shape-rendering:crispEdges;transition:opacity .2s ease}.link:hover{stroke-width:4px;stroke:#2196f3}.link.highlighted{stroke:#ff5722;stroke-width:3px;opacity:1}.link-label{fill:#666;text-anchor:middle;dominant-baseline:central;font-family:IBM Plex Sans,sans-serif;font-size:10px;pointer-events:none;-webkit-user-select:none;user-select:none}.zoom-controls{background:#ffffffe6;border-radius:6px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:4px;padding:8px;position:absolute;right:10px;top:10px;z-index:1000}.zoom-button{align-items:center;background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:32px;justify-content:center;transition:all .2s ease;width:32px}.zoom-button:hover{background:#f5f5f5;border-color:#999}.zoom-button:active{background:#e5e5e5;transform:scale(.95)}.zoom-button[title="Fit to View"]{font-size:10px;font-weight:400}.d3-tooltip{background:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 2px 8px #00000026;font-family:IBM Plex Sans,sans-serif;font-size:14px;max-width:300px;padding:10px;pointer-events:none;position:absolute;z-index:1000}.d3-tooltip h4{color:#333;font-size:16px;font-weight:600;margin:0 0 8px}.d3-tooltip p{color:#666;margin:4px 0}.d3-tooltip .property-list{margin-top:8px}.d3-tooltip .property-item{display:flex;justify-content:space-between;margin:2px 0;padding:2px 0}.d3-tooltip .property-label{color:#444;font-weight:500}.d3-tooltip .property-value{color:#666;font-family:IBM Plex Mono,monospace}.node-entering{animation:nodeEnter .3s ease-out}.node-exiting{animation:nodeExit .3s ease-in}@keyframes nodeEnter{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes nodeExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}.d3-force-graph.loading{opacity:.6;pointer-events:none}.d3-force-graph.loading:after{background:#ffffffe6;border:1px solid #ddd;border-radius:4px;color:#666;content:"Loading...";font-family:IBM Plex Sans,sans-serif;left:50%;padding:10px 20px;position:absolute;top:50%;transform:translate(-50%,-50%)}@media (max-width:768px){.node-label{font-size:10px}.link-label{font-size:8px}.zoom-controls{right:5px;top:5px}.zoom-button{font-size:16px;height:28px;width:28px}}.d3-force-graph-container{height:100%;overflow:hidden;position:relative;width:100%}.d3-force-graph{background:#fff;cursor:grab;height:100%;-webkit-user-select:none;user-select:none;width:100%}.d3-force-graph:active{cursor:grabbing}.account-manager-overlay{align-items:center;background-color:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;user-select:none;-webkit-user-select:none;z-index:1050}.account-manager-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;height:85vh;max-height:700px;max-width:900px;overflow:hidden;width:90vw}.account-manager-header{align-items:center;background:#000;color:#fff;display:flex;justify-content:space-between;padding:12px 20px}.account-manager-header h2{color:#fff;font-size:18px;font-weight:600;margin:0}.account-manager-header .close-button{align-items:center;background:none;border:1px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:32px;justify-content:center;transition:all .2s ease;width:32px}.account-manager-header .close-button:hover{background:#333;transform:scale(1.1)}.account-manager-toolbar{background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;gap:12px;padding:12px 20px}.search-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:13px;max-width:300px;outline:none;padding:8px 12px;transition:border-color .2s}.search-input:focus{border-color:#000}.account-table-header{background:#f0f0f0;border-bottom:1px solid #ddd;color:#555;display:grid;font-size:11px;font-weight:600;grid-template-columns:1fr 100px 200px;letter-spacing:.5px;padding:10px 20px;text-transform:uppercase}.account-table-header .account-type-cell{text-align:center}.account-manager-content{flex:1 1;overflow-y:auto;overscroll-behavior:contain;padding:0}.empty,.error,.loading{align-items:center;color:#666;display:flex;font-size:13px;height:150px;justify-content:center}.error{color:#d32f2f}.account-tree{padding:4px 0}.account-row,.account-tree{user-select:none;-webkit-user-select:none}.account-row{align-items:center;border-bottom:1px solid #f5f5f5;display:grid;grid-template-columns:1fr 100px 200px;min-height:28px;padding:2px 20px;position:relative;transition:background .15s}.account-row:hover{background:#f8f9fa}.account-row.highlighted{animation:highlight-pulse 1s ease-in-out 2;background:#fff3cd}@keyframes highlight-pulse{0%,to{background:#fff3cd}50%{background:#ffe69c}}.account-row.dragging{background:#e3f2fd;opacity:.5}.account-row.drag-over-inside{background:#e8f5e9;box-shadow:inset 0 0 0 2px #4caf50}.account-row.drag-over-before:before{background:#2196f3;border-radius:2px;content:"";height:3px;left:20px;position:absolute;right:20px;top:0;z-index:10}.drop-zone{left:0;pointer-events:auto;position:absolute;right:0;z-index:100}.drop-zone-before{height:14px;top:0}.account-name-cell{align-items:center;display:flex;gap:6px;min-width:0;overflow:hidden}.drag-handle{color:#999;cursor:grab;flex-shrink:0;font-size:14px;opacity:.7;transition:opacity .2s,color .2s;-webkit-user-select:none;user-select:none}.account-row:hover .drag-handle{color:#555;opacity:1}.drag-handle:active{cursor:grabbing}.expand-toggle{color:#666;cursor:pointer;flex-shrink:0;font-size:10px;text-align:center;-webkit-user-select:none;user-select:none;width:16px}.expand-toggle:hover{color:#000}.expand-placeholder{flex-shrink:0;width:16px}.account-name{color:#333;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-type-cell{text-align:center}.type-badge{border-radius:10px;display:inline-block;font-size:11px;font-weight:500;padding:2px 8px}.type-badge.leaf{background:#e3f2fd;color:#1565c0}.type-badge.aggregate{background:#fff3e0;color:#ef6c00}.formula-cell{min-width:0}.formula-cell,.formula-link{align-items:center;display:flex}.formula-link{border-radius:4px;color:#555;cursor:pointer;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;gap:4px;max-width:100%;overflow:hidden;padding:4px 8px;text-overflow:ellipsis;transition:background .15s,color .15s;white-space:nowrap}.formula-link:hover{background:#e3f2fd;color:#1565c0}.formula-text{overflow:hidden;text-overflow:ellipsis}.no-formula{color:#ccc;font-size:12px}.add-formula-link{color:#999;cursor:pointer;font-size:12px;transition:color .15s}.add-formula-link:hover{color:#000}.account-manager-footer{background:#f8f9fa;border-top:1px solid #e9ecef;padding:12px 20px}.hint{color:#666;font-size:12px}.account-manager-content::-webkit-scrollbar{width:8px}.account-manager-content::-webkit-scrollbar-track{background:#f0f0f0}.account-manager-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.account-manager-content::-webkit-scrollbar-thumb:hover{background:#999}.filter-indicator{align-items:center;cursor:help;display:inline-flex;font-size:12px;justify-content:center;margin-left:6px;opacity:.8;transition:opacity .2s}.filter-indicator:hover{opacity:1}.role-manager-overlay{align-items:center;background-color:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.role-manager-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;height:85vh;max-height:600px;max-width:900px;overflow:hidden;width:90vw}.role-manager-header{align-items:center;background:#000;color:#fff;display:flex;justify-content:space-between;padding:12px 20px}.role-manager-header h2{color:#fff;font-size:18px;font-weight:600;margin:0}.role-manager-header .close-button{align-items:center;background:none;border:1px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:32px;justify-content:center;transition:all .2s ease;width:32px}.role-manager-header .close-button:hover{background:#333;transform:scale(1.1)}.role-manager-message{align-items:center;display:flex;font-size:13px;justify-content:space-between;padding:10px 20px}.role-manager-message.error{background:#ffebee;border-bottom:1px solid #ffcdd2;color:#c62828}.role-manager-message button{background:none;border:none;cursor:pointer;font-size:16px;opacity:.7}.role-manager-message button:hover{opacity:1}.role-table-header{background:#f0f0f0;border-bottom:1px solid #ddd;color:#555;display:grid;font-size:11px;font-weight:600;grid-template-columns:200px 150px 1fr 1fr;letter-spacing:.5px;padding:10px 20px;text-transform:uppercase}.role-manager-content{flex:1 1;overflow-y:auto;padding:0}.empty,.loading,.not-admin{align-items:center;color:#666;display:flex;flex-direction:column;font-size:13px;height:150px;justify-content:center}.not-admin p{color:#999;margin:0}.role-table{padding:4px 0}.role-row{align-items:center;border-bottom:1px solid #f0f0f0;display:grid;grid-template-columns:200px 150px 1fr 1fr;min-height:22px;padding:2px 20px}.role-row:hover{background:#f8f9fa}.model-col{align-items:center;display:flex;gap:8px}.model-id{color:#999;font-family:SF Mono,Monaco,monospace;font-size:11px}.model-name{color:#333;font-size:13px;font-weight:500}.owner-col{align-items:center;display:flex;position:relative}.editors-col,.viewers-col{align-items:center;display:flex;min-width:0;position:relative}.pill-container{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:4px;min-height:18px;padding:2px 0;transition:background .15s}.pill-container:hover{background:#0000}.empty-pill{border:1px dashed #ccc;border-radius:10px;color:#999;font-size:11px;padding:2px 6px}.empty-pill:hover{border-color:#999;color:#666}.dropdown-overlay{left:0;margin-top:1px;position:absolute;top:100%;z-index:100}.dropdown-menu{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001f;max-height:180px;min-width:120px;overflow-y:auto;padding:4px 0}.dropdown-item{align-items:center;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:4px 10px;transition:background .1s}.dropdown-item:hover{background:#f5f5f5}.dropdown-item.selected{background:#0000}.dropdown-item .checkbox{align-items:center;background:#fff;border:1px solid #ccc;border-radius:2px;color:#0000;display:flex;flex-shrink:0;font-size:10px;height:14px;justify-content:center;width:14px}.dropdown-item.selected .checkbox{background:#2196f3;border-color:#2196f3;color:#fff}.edit-field{align-items:center;display:flex;gap:6px;width:100%}.edit-field input[type=text],.edit-field select{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:13px;min-width:0;padding:6px 10px}.edit-field input[type=text]:focus,.edit-field select:focus{border-color:#000;outline:none}.edit-field .cancel-btn,.edit-field .save-btn{align-items:center;border:none;border-radius:3px;cursor:pointer;display:flex;flex-shrink:0;font-size:12px;height:22px;justify-content:center;width:22px}.edit-field .save-btn{background:#4caf50;color:#fff}.edit-field .save-btn:hover{background:#43a047}.edit-field .cancel-btn{background:#f5f5f5;color:#666}.edit-field .cancel-btn:hover{background:#e0e0e0}.editors-edit{gap:4px}.editors-edit select[multiple]{border:1px solid #ddd;border-radius:4px;font-size:11px;min-width:120px;padding:2px}.editors-edit select[multiple]:focus{border-color:#000;outline:none}.editors-edit select[multiple] option{padding:2px 6px}.owner-badge{background:#4caf50;border-radius:10px;color:#fff;display:inline-block;font-size:11px;font-weight:500;padding:2px 8px}.editor-badge{background:#2196f3}.editor-badge,.viewer-badge{border-radius:10px;color:#fff;display:inline-block;font-size:10px;font-weight:500;margin-right:3px;padding:2px 6px}.viewer-badge{background:#9e9e9e}.editors-list,.viewers-list{display:flex;flex-wrap:wrap;gap:4px}.no-value{color:#bbb;font-size:12px}.editors-dropdown{flex:1 1;position:relative}.editors-dropdown select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:12px;padding:4px 8px;width:100%}.editors-dropdown select:focus{border-color:#000;outline:none}.role-manager-content::-webkit-scrollbar{width:8px}.role-manager-content::-webkit-scrollbar-track{background:#f0f0f0}.role-manager-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.role-manager-content::-webkit-scrollbar-thumb:hover{background:#999}#root,body,html{height:100%;margin:0;min-height:100vh;padding:0;width:100%}button:active,button:focus,button:focus-visible{box-shadow:none!important;outline:none!important}button,input[type=button],input[type=reset],input[type=submit]{outline:none!important}button::-moz-focus-inner,input::-moz-focus-inner{border:0!important;outline:none!important}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.596169ab.css.map*/