.DockingViewer{background-color:var(--color-bg-base);flex-direction:column;width:100vw;height:100vh;transition:margin-left .3s;display:flex;overflow:hidden}.DockingViewer--fullscreen{width:100vw!important;margin-left:0!important}.DockingViewer--playground{width:100%!important;height:100%!important;margin-left:0!important}.DockingViewer--playground .DockingViewer__Header{flex-wrap:wrap;gap:8px;padding:12px 16px}.DockingViewer--playground .DockingViewer__Header__Title h1{font-size:16px}.DockingViewer--playground .DockingViewer__Header__FileUpload{flex-wrap:wrap;gap:8px;margin-left:0;margin-right:0}.DockingViewer--playground .DockingViewer__Header__Actions{gap:4px}.DockingViewer__Loading{color:var(--color-text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.DockingViewer__Loading p{font-size:14px}.DockingViewer__Loading .DockingViewer__Spinner{border:2px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.DockingViewer__HBondLoading .DockingViewer__Spinner{border:2px solid var(--color-border-default);border-top-color:gold;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.DockingViewer__Error{color:var(--color-danger);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.DockingViewer__Error p:first-child{font-size:16px;font-weight:500}.DockingViewer__Error p:last-child{color:var(--color-text-secondary);font-size:14px}.DockingViewer__Header{background-color:var(--color-bg-base);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.DockingViewer__Header__Title{color:var(--color-text-primary);align-items:center;gap:12px;display:flex}.DockingViewer__Header__Title svg{color:var(--color-accent-primary)}.DockingViewer__Header__Title h1{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:600}.DockingViewer__Header__FileUpload{align-items:center;gap:12px;margin-left:auto;margin-right:20px;display:flex}.DockingViewer__Header__Actions{gap:8px;display:flex}.DockingViewer__Badge{background:var(--color-accent-subtle);color:var(--color-accent-primary);text-transform:uppercase;letter-spacing:.02em;border-radius:4px;padding:4px 10px;font-size:10px;font-weight:500}.DockingViewer__FileUploadItem{align-items:center;gap:8px;display:flex}.DockingViewer__FileUploadBtn{background:var(--color-bg-elevated);border:1px dashed var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.DockingViewer__FileUploadBtn svg{width:14px;height:14px}.DockingViewer__FileUploadBtn:hover{background:var(--color-bg-hover);border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.DockingViewer__FileName{background:var(--color-accent-subtle);color:var(--color-accent-primary);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;max-width:150px;padding:4px 8px;font-size:11px;font-weight:500;display:flex;overflow:hidden}.DockingViewer__FileName svg{flex-shrink:0;width:12px;height:12px}.DockingViewer__ResetBtn{background:var(--color-danger-subtle);color:var(--color-danger);cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.DockingViewer__ResetBtn svg{width:14px;height:14px}.DockingViewer__ResetBtn:hover{background:var(--color-danger);color:var(--color-text-on-accent)}.DockingViewer__IconBtn{background:var(--color-border-default);border:1px solid var(--color-border-hover);width:36px;height:36px;color:var(--color-text-primary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.DockingViewer__IconBtn svg{width:20px;height:20px}.DockingViewer__IconBtn:hover{background:var(--color-border-hover);color:var(--color-text-on-accent);border-color:var(--color-border-hover)}.DockingViewer__IconBtn.active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:var(--color-text-on-accent)}.DockingViewer__Content{flex:1;display:flex;position:relative;overflow:hidden}.DockingViewer__ViewerContainer{flex-direction:column;flex:1;display:flex;position:relative}.DockingViewer__ControlBar{background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.DockingViewer__ControlBar__Group{gap:4px;display:flex}.DockingViewer__ControlBar__Group button{background:var(--color-bg-input);border:1px solid var(--color-border-default);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.DockingViewer__ControlBar__Group button:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-hover)}.DockingViewer__Viewer{background:var(--color-bg-input);flex:1;width:100%;min-height:500px;position:relative}.DockingViewer__PanOverlay{pointer-events:none;position:absolute;inset:0}.DockingViewer__PanOverlay__btn{border:1px solid var(--color-border-default);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;pointer-events:auto;opacity:.5;background:#161616b3;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute}.DockingViewer__PanOverlay__btn:hover{opacity:1;color:var(--color-text-primary);border-color:var(--color-border-hover);background:#161616e6}.DockingViewer__PanOverlay__btn--up{top:12px;left:50%;transform:translate(-50%)}.DockingViewer__PanOverlay__btn--down{bottom:12px;left:50%;transform:translate(-50%)}.DockingViewer__PanOverlay__btn--left{top:50%;left:12px;transform:translateY(-50%)}.DockingViewer__PanOverlay__btn--right{top:50%;right:12px;transform:translateY(-50%)}.DockingViewer__InfoOverlay{border:1px solid var(--color-border-default);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#0f0f0ff2;border-radius:8px;min-width:200px;padding:16px;position:absolute;top:16px;left:16px}.DockingViewer__InfoOverlay h3{color:var(--color-text-primary);border-bottom:1px solid var(--color-border-subtle);margin:0 0 12px;padding-bottom:8px;font-size:13px;font-weight:600}.DockingViewer__InfoSection{margin-bottom:12px}.DockingViewer__InfoSection:last-child{margin-bottom:0}.DockingViewer__InfoSection h4{color:var(--color-accent-primary);text-transform:uppercase;letter-spacing:.02em;margin:0 0 6px;font-size:11px;font-weight:600}.DockingViewer__InfoSection p{color:var(--color-text-secondary);margin:4px 0;font-size:12px}.DockingViewer__InfoSection p strong{color:var(--color-text-primary);font-weight:500}.DockingViewer__HBondLoading{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#0f0f0fe6;border:1px solid #ffd7001f;border-radius:8px;align-items:center;gap:10px;padding:10px 20px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.DockingViewer__HBondLoading p{color:gold;margin:0;font-size:12px;font-weight:500}.DockingViewer__SidePanel{background:var(--color-bg-elevated);border-left:1px solid var(--color-border-subtle);flex-direction:column;width:360px;min-width:360px;max-width:360px;display:flex;overflow:hidden auto}.DockingViewer__SidePanel::-webkit-scrollbar{width:8px}.DockingViewer__SidePanel::-webkit-scrollbar-track{background:0 0}.DockingViewer__SidePanel::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:4px}.DockingViewer__SidePanel::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb-hover)}.DockingViewer__Accordion{border-bottom:1px solid var(--color-border-subtle)}.DockingViewer__Accordion__Header{background:var(--color-bg-input);width:100%;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.03em;cursor:pointer;border:none;align-items:center;gap:8px;padding:14px 16px;font-size:12px;font-weight:600;transition:background .15s;display:flex}.DockingViewer__Accordion__Header svg{color:var(--color-accent-primary);flex-shrink:0}.DockingViewer__Accordion__Header span{text-align:left;flex:1}.DockingViewer__Accordion__Header:hover{background:var(--color-bg-hover)}.DockingViewer__Accordion__Content{padding:12px 16px 16px}.DockingViewer__LayerActions{gap:6px;margin-bottom:12px;display:flex}.DockingViewer__LayerActionBtn{border:1px solid var(--color-border-default);color:var(--color-text-tertiary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 8px;font-size:10px;font-weight:500;transition:all .15s}.DockingViewer__LayerActionBtn:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-hover)}.DockingViewer__LayerList{flex-direction:column;gap:4px;display:flex}.DockingViewer__LayerList__Empty{color:var(--color-text-tertiary);text-align:center;padding:16px 0;font-size:12px}.DockingViewer__SettingSection{background:var(--color-bg-input);border:1px solid var(--color-border-subtle);border-radius:8px;margin-bottom:12px;padding:16px;overflow:hidden}.DockingViewer__SettingSection h3{color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:8px;margin:0 0 14px;font-size:12px;font-weight:600;display:flex}.DockingViewer__SettingSection h3 svg{color:var(--color-accent-primary)}.DockingViewer__SettingSection--hbond{border-color:#ffd70026;overflow:visible}.DockingViewer__SettingSection--hbond h3 svg{color:gold!important}.DockingViewer__SettingRow{align-items:center;gap:12px;width:100%;margin-bottom:12px;display:flex;overflow:hidden}.DockingViewer__SettingRow:last-child{margin-bottom:0}.DockingViewer__SettingRow label{color:var(--color-text-secondary);flex-shrink:0;min-width:90px;font-size:13px}.DockingViewer__SettingRow select{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);min-width:0;max-width:100%;color:var(--color-text-primary);cursor:pointer;border-radius:6px;flex:1;padding:8px 12px;font-size:13px;transition:all .15s}.DockingViewer__SettingRow select:focus{border-color:var(--color-accent-primary);outline:none}.DockingViewer__SettingRow select:disabled{opacity:.4;cursor:not-allowed}.DockingViewer__SettingRow select option{background:var(--color-bg-elevated);color:var(--color-text-primary)}.DockingViewer__SettingRow input[type=range]{background:var(--color-border-default);appearance:none;cursor:pointer;border-radius:2px;flex:1;height:4px}.DockingViewer__SettingRow input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-accent-primary);cursor:pointer;border-radius:50%;width:14px;height:14px;transition:transform .15s}.DockingViewer__SettingRow input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.DockingViewer__SettingRow input[type=color]{border:1px solid var(--color-border-default);cursor:pointer;background:0 0;border-radius:4px;width:36px;height:28px;padding:2px}.DockingViewer__SettingRow input[type=color]::-webkit-color-swatch-wrapper{padding:0}.DockingViewer__SettingRow input[type=color]::-webkit-color-swatch{border:none;border-radius:2px}.DockingViewer__Value{color:var(--color-accent-primary);text-align:right;min-width:28px;font-family:SF Mono,Consolas,monospace;font-size:12px;font-weight:500}.DockingViewer__Toggle{cursor:pointer;align-items:center;gap:12px;width:100%;margin-bottom:10px;display:flex}.DockingViewer__Toggle:last-child{margin-bottom:0}.DockingViewer__Toggle input{display:none}.DockingViewer__ToggleSlider{background:var(--color-border-default);border-radius:10px;flex-shrink:0;width:36px;height:20px;transition:background .15s;position:relative}.DockingViewer__ToggleSlider:after{content:"";background:var(--color-text-tertiary);border-radius:50%;width:16px;height:16px;transition:all .15s;position:absolute;top:2px;left:2px}.DockingViewer__Toggle input:checked+.DockingViewer__ToggleSlider{background:var(--color-accent-primary)}.DockingViewer__Toggle input:checked+.DockingViewer__ToggleSlider:after{background:#fff;left:calc(100% - 18px)}.DockingViewer__ToggleLabel{color:var(--color-text-primary);font-size:13px}.DockingViewer__StyleOptions{grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:12px;display:grid}.DockingViewer__StyleOptions button{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:8px 10px;font-size:12px;font-weight:500;transition:all .15s}.DockingViewer__StyleOptions button:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-hover)}.DockingViewer__StyleOptions button.active{background:var(--color-accent-subtle);color:var(--color-accent-primary);border-color:#5e6ad24d}.DockingViewer__StyleOptions button:disabled{opacity:.4;cursor:not-allowed}.DockingViewer__ColorPresets{gap:6px;margin-bottom:12px;display:flex}.DockingViewer__ColorBtn{cursor:pointer;border:2px solid #0000;border-radius:4px;width:28px;height:28px;transition:all .15s}.DockingViewer__ColorBtn:hover{transform:scale(1.1)}.DockingViewer__ColorBtn.active{border-color:var(--color-accent-primary);box-shadow:0 0 0 2px #5e6ad24d}.DockingViewer__HbondStatus{border-radius:6px;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:12px;display:flex}.DockingViewer__HbondStatus--loading{color:gold;background:#ffd70014}.DockingViewer__HbondStatus--error{background:var(--color-danger-subtle);color:var(--color-danger);flex-wrap:wrap}.DockingViewer__HbondStatus--error span{flex:1;min-width:0}.DockingViewer__HbondStatus--error button{border:1px solid var(--color-danger);color:var(--color-danger);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:11px;transition:all .15s}.DockingViewer__HbondStatus--error button:hover{background:var(--color-danger);color:var(--color-text-on-accent)}.DockingViewer__HbondStatus--success{color:var(--color-status-active);background:#3ecf8e14;font-weight:500}.DockingViewer__HbondStatus--info{color:var(--color-accent-primary);background:#5e6ad214}.DockingViewer__HbondStatus--info svg{vertical-align:middle}.DockingViewer__MiniSpinner{border:2px solid #ffd70033;border-top-color:gold;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}.DockingViewer__HbondColorPicker{flex:1;justify-content:flex-end;gap:6px;display:flex}.DockingViewer__ColorDot{cursor:pointer;border:2px solid #0000;border-radius:50%;width:20px;height:20px;padding:0;transition:all .15s}.DockingViewer__ColorDot:hover{transform:scale(1.15)}.DockingViewer__ColorDot.active{border-color:var(--color-text-primary);box-shadow:0 0 0 2px var(--color-border-hover)}.DockingViewer__HbondList{border-top:1px solid var(--color-border-subtle);margin-top:12px;padding-top:12px}.DockingViewer__HbondList h4{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em;margin:0 0 8px;font-size:11px;font-weight:600}.DockingViewer__HbondListScroll{max-height:180px;overflow-y:auto}.DockingViewer__HbondListScroll::-webkit-scrollbar{width:4px}.DockingViewer__HbondListScroll::-webkit-scrollbar-track{background:0 0}.DockingViewer__HbondListScroll::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:2px}.DockingViewer__HbondItem{border-radius:4px;align-items:center;gap:8px;padding:6px 8px;font-size:11px;transition:background .1s;display:flex}.DockingViewer__HbondItem:hover{background:var(--color-bg-hover)}.DockingViewer__HbondItem__Residue{color:gold;min-width:72px;font-family:SF Mono,Consolas,monospace;font-weight:600}.DockingViewer__HbondItem__Atoms{color:var(--color-text-secondary);white-space:nowrap;flex:1}.DockingViewer__HbondItem__Distance{color:var(--color-text-primary);text-align:right;min-width:48px;font-family:SF Mono,Consolas,monospace;font-weight:500}.DockingViewer__QuickActions{flex-direction:column;gap:6px;display:flex}.DockingViewer__QuickActions button{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:10px 14px;font-size:13px;font-weight:500;transition:all .15s}.DockingViewer__QuickActions button:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-hover)}.DockingViewer__LayerGroup{margin-bottom:12px}.DockingViewer__LayerGroup:last-child{margin-bottom:0}.DockingViewer__LayerGroup__Title{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border-subtle);margin-bottom:6px;padding:0 4px 6px;font-size:10px;font-weight:600}.DockingViewer__LayerItem{background:var(--color-bg-input);border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;margin-bottom:4px;padding:8px;transition:all .15s;display:flex}.DockingViewer__LayerItem:last-child{margin-bottom:0}.DockingViewer__LayerItem:hover{background:var(--color-bg-hover)}.DockingViewer__LayerItem--visible{border-color:#5e6ad233}.DockingViewer__LayerItem--hidden{opacity:.5}.DockingViewer__LayerItem--hidden .DockingViewer__LayerItem__Name{color:var(--color-text-tertiary);text-decoration:line-through}.DockingViewer__LayerItem__Visibility{width:24px;height:24px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.DockingViewer__LayerItem__Visibility:hover{background:var(--color-border-default);color:var(--color-text-primary)}.DockingViewer__LayerItem__Visibility svg{width:16px;height:16px}.DockingViewer__LayerItem__ColorDot{border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 4px #0000004d}.DockingViewer__LayerItem__Name{min-width:0;color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}.DockingViewer__LayerItem__Badge{text-transform:uppercase;letter-spacing:.02em;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:600}.DockingViewer__LayerItem__Badge--protein{color:var(--color-status-active);background:#3ecf8e26}.DockingViewer__LayerItem__Badge--ligand{background:var(--color-accent-subtle);color:var(--color-accent-primary)}.DockingViewer__LayerItem__Hbond{border:1px solid var(--color-border-default);width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.DockingViewer__LayerItem__Hbond:hover{color:gold;background:#ffd7001a;border-color:#ffd7004d}.DockingViewer__LayerItem__Hbond.active{color:gold;background:#ffd70026;border-color:#ffd70080}@media (max-width:1200px){.DockingViewer__SidePanel{width:320px;min-width:320px;max-width:320px}}@media (max-width:768px){.DockingViewer__Content{flex-direction:column}.DockingViewer__SidePanel{border-left:none;border-top:1px solid var(--color-border-subtle);width:100%;min-width:100%;max-width:100%;max-height:50vh}.DockingViewer__Viewer{min-height:350px}}
.Playground{background:var(--color-bg-base);width:100vw;height:100vh;color:var(--color-text-primary);flex-direction:column;display:flex;overflow:hidden}.Playground__Body{flex:1;display:flex;overflow:hidden}.Playground__Resizer{cursor:col-resize;background:0 0;flex-shrink:0;width:4px;transition:background .15s;position:relative}.Playground__Resizer:hover,.Playground__Resizer:active{background:var(--color-accent-primary)}.Playground__Resizer:after{content:"";position:absolute;inset:0 -3px}.Playground__FileExplorer{background:var(--color-bg-elevated);border-right:1px solid var(--color-bg-hover);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.Playground__FileExplorer__Container{flex-direction:column;height:100%;display:flex}.Playground__FileExplorer__Header{letter-spacing:.5px;color:var(--color-text-secondary);text-transform:uppercase;justify-content:space-between;align-items:center;padding:12px 12px 8px;font-size:11px;font-weight:600;display:flex}.Playground__FileExplorer__RefreshBtn{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;display:flex}.Playground__FileExplorer__RefreshBtn:hover{color:var(--color-text-primary);background:var(--color-bg-active)}.Playground__FileExplorer__Search{color:var(--color-text-secondary);align-items:center;gap:8px;padding:4px 12px 8px;display:flex}.Playground__FileExplorer__Search input{background:var(--color-bg-input);border:1px solid var(--color-border-default);color:var(--color-text-primary);border-radius:6px;outline:none;flex:1;padding:6px 8px;font-size:12px}.Playground__FileExplorer__Search input:focus{border-color:var(--color-accent-primary)}.Playground__FileExplorer__Search input::placeholder{color:var(--color-text-tertiary)}.Playground__FileExplorer__Tree{flex:1;overflow:hidden auto}.Playground__FileExplorer__Tree::-webkit-scrollbar{width:6px}.Playground__FileExplorer__Tree::-webkit-scrollbar-track{background:0 0}.Playground__FileExplorer__Tree::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}.Playground__FileExplorer__Loading,.Playground__FileExplorer__Empty{text-align:center;color:var(--color-text-secondary);padding:24px 16px;font-size:13px}.Playground__TreeNode{cursor:pointer;color:var(--color-text-primary);white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:4px 8px;font-size:13px;display:flex}.Playground__TreeNode:hover{background:var(--color-bg-hover)}.Playground__TreeNode--file{color:var(--color-text-secondary)}.Playground__TreeNode__Arrow{width:16px;color:var(--color-text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.Playground__TreeNode__Icon{color:#f59e0b;flex-shrink:0;align-items:center;display:flex}.Playground__TreeNode--file .Playground__TreeNode__Icon{color:inherit}.Playground__TreeNode__Label{text-overflow:ellipsis;flex:1;overflow:hidden}.Playground__TreeNode__Badge{background:var(--color-bg-active);color:var(--color-text-secondary);border-radius:8px;flex-shrink:0;padding:1px 6px;font-size:10px}.Playground__FileIcon{align-items:center;display:flex}.Playground__ContextMenu{z-index:1000;background:var(--color-bg-input);border:1px solid var(--color-border-default);min-width:180px;box-shadow:var(--shadow-modal);border-radius:6px;padding:4px 0;animation:.1s ease-out contextMenuFadeIn;position:fixed}.Playground__ContextMenu__Item{color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;padding:7px 14px;font-size:13px;transition:background .1s,color .1s;display:flex}.Playground__ContextMenu__Item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.Playground__ContextMenu__Item svg{flex-shrink:0}.Playground__ContextMenu__SubItem{padding-left:28px;font-size:12px}.Playground__ContextMenu__Divider{background:var(--color-border-default);height:1px;margin:4px 0}.Playground__ContextMenu__Label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;-webkit-user-select:none;user-select:none;padding:4px 14px;font-size:11px}.Playground__Workspace{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.Playground__TabBar{background:var(--color-bg-elevated);border-bottom:1px solid var(--color-bg-hover);flex-shrink:0;align-items:stretch;display:flex}.Playground__TabBar__Scroll{flex:1;min-width:0;display:flex;overflow:auto hidden}.Playground__TabBar__Scroll::-webkit-scrollbar{height:0}.Playground__TabBar__NewTab{border-left:1px solid var(--color-bg-input);flex-shrink:0;align-items:center;display:flex;position:relative}.Playground__TabBar__NewTab__Btn{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;padding:6px 10px;transition:background .1s,color .1s;display:flex}.Playground__TabBar__NewTab__Btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.Playground__TabBar__NewTab__Menu{z-index:100;background:var(--color-bg-input);border:1px solid var(--color-border-default);min-width:180px;box-shadow:var(--shadow-modal);border-radius:6px;padding:4px 0;position:absolute;top:100%;right:0}.Playground__TabBar__NewTab__MenuItem{color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:background .1s,color .1s;display:flex}.Playground__TabBar__NewTab__MenuItem:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.Playground__TabBar__Tab{color:var(--color-text-secondary);cursor:pointer;border-right:1px solid var(--color-bg-input);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;min-width:0;padding:8px 12px;font-size:12px;transition:background .1s,color .1s;display:flex}.Playground__TabBar__Tab:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.Playground__TabBar__Tab--active{background:var(--color-bg-base);color:var(--color-text-primary);border-bottom:2px solid var(--color-accent-primary)}.Playground__TabBar__Tab__Icon{flex-shrink:0}.Playground__TabBar__Tab__Title{text-overflow:ellipsis;max-width:140px;overflow:hidden}.Playground__TabBar__Tab__Close{color:var(--color-text-tertiary);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;align-items:center;padding:2px;transition:opacity .1s;display:flex}.Playground__TabBar__Tab:hover .Playground__TabBar__Tab__Close,.Playground__TabBar__Tab--active .Playground__TabBar__Tab__Close{opacity:1}.Playground__TabBar__Tab__Close:hover{background:var(--color-bg-active);color:var(--color-text-primary)}.Playground__AppContainer{flex:1;position:relative;overflow:hidden}.Playground__AppContainer__Pane{flex-direction:column;display:flex;position:absolute;inset:0}.Playground__AppFallback{color:var(--color-text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.Playground__AppFallback__Spinner{border:3px solid var(--color-bg-active);border-top-color:var(--color-accent-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.Playground__Welcome{flex:1;justify-content:center;align-items:center;display:flex}.Playground__Welcome__Content{text-align:center;max-width:560px}.Playground__Welcome__Logo{color:var(--color-accent-primary);margin-bottom:16px}.Playground__Welcome__Title{color:var(--color-text-primary);margin:0 0 8px;font-size:28px;font-weight:700}.Playground__Welcome__Subtitle{color:var(--color-text-secondary);margin:0 0 32px;font-size:14px;line-height:1.6}.Playground__Welcome__Apps{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px;display:grid}.Playground__Welcome__AppCard{background:var(--color-bg-elevated);border:1px solid var(--color-bg-hover);color:var(--color-text-secondary);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:20px 16px;transition:border-color .15s,background .15s;display:flex}.Playground__Welcome__AppCard:hover{border-color:var(--color-accent-primary);background:var(--color-bg-hover);color:var(--color-text-primary)}.Playground__Welcome__AppCard__Label{color:var(--color-text-primary);font-size:13px;font-weight:600}.Playground__Welcome__AppCard__Desc{color:var(--color-text-secondary);font-size:11px}.Playground__Welcome__Tips{flex-direction:column;gap:8px;display:flex}.Playground__Welcome__Tip{color:var(--color-text-tertiary);align-items:center;gap:8px;font-size:12px;display:flex}.Playground__DockingViewerApp{width:100%;height:100%;position:relative}.Playground__DockingViewerApp .DockingViewer{width:100%;height:100%}.spinning{animation:1s linear infinite spin}
.Playground__AIChat{flex:1;justify-content:center;align-items:center;display:flex}.Playground__AIChat__Container{flex-direction:column;height:100%;display:flex;overflow:hidden}.Playground__AIChat__Header{border-bottom:1px solid var(--color-bg-active);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.Playground__AIChat__Header__Left{align-items:center;gap:8px;display:flex}.Playground__AIChat__Header__Title{color:var(--color-text-primary);font-size:12px;font-weight:600}.Playground__AIChat__Header__ChatId{color:#22c55e;background:#22c55e1a;border-radius:8px;padding:1px 6px;font-size:10px}.Playground__AIChat__Header__Actions{gap:4px;display:flex}.Playground__AIChat__Header__Btn{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.Playground__AIChat__Header__Btn:hover{color:var(--color-text-primary);background:var(--color-bg-active)}.Playground__AIChat__History{background:var(--color-bg-elevated);border:1px solid var(--color-bg-active);z-index:20;max-height:300px;box-shadow:var(--shadow-modal);border-radius:8px;position:absolute;top:76px;left:8px;right:8px;overflow-y:auto}.Playground__AIChat__History__Header{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-bg-active);padding:8px 12px;font-size:11px;font-weight:600}.Playground__AIChat__History__Empty{color:var(--color-text-tertiary);text-align:center;padding:16px 12px;font-size:12px}.Playground__AIChat__History__Item{color:var(--color-text-secondary);cursor:pointer;border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}.Playground__AIChat__History__Item:hover{background:var(--color-bg-active);color:var(--color-text-primary)}.Playground__AIChat__History__Item.active{color:var(--color-accent-primary);background:#3b82f61a}.Playground__AIChat__History__Item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.Playground__AIChat__Messages{flex-direction:column;flex:1;gap:12px;padding:12px 8px;display:flex;overflow-y:auto}.Playground__AIChat__Messages::-webkit-scrollbar{width:4px}.Playground__AIChat__Messages::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:2px}.Playground__AIChat__Msg{align-items:flex-start;gap:8px;display:flex}.Playground__AIChat__Msg__Avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;font-weight:700;display:flex}.Playground__AIChat__Msg--user .Playground__AIChat__Msg__Avatar{background:var(--color-accent-primary);color:#fff}.Playground__AIChat__Msg--assistant .Playground__AIChat__Msg__Avatar{color:#fff;background:#8b5cf6}.Playground__AIChat__Msg__Body{flex:1;min-width:0}.Playground__AIChat__Msg__Text{color:var(--color-text-primary);word-wrap:break-word;font-size:13px;line-height:1.6}.Playground__AIChat__Msg__Text p{margin:0 0 8px}.Playground__AIChat__Msg__Text p:last-child{margin-bottom:0}.Playground__AIChat__Msg__Text pre{background:var(--color-bg-base);border-radius:6px;margin:8px 0;padding:8px 12px;font-size:12px;overflow-x:auto}.Playground__AIChat__Msg__Text code{background:var(--color-bg-active);border-radius:3px;padding:1px 4px;font-size:12px}.Playground__AIChat__Msg__Text pre code{background:0 0;padding:0}.Playground__AIChat__Msg__Text ul,.Playground__AIChat__Msg__Text ol{margin:4px 0;padding-left:20px}.Playground__AIChat__Msg__Text blockquote{border-left:3px solid var(--color-border-hover);color:var(--color-text-secondary);margin:8px 0;padding:4px 12px;font-size:12px}.Playground__AIChat__Msg__Text strong{color:#f8fafc}.Playground__AIChat__Msg__Text a{color:var(--color-accent-primary)}.Playground__AIChat__Msg__Text table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}.Playground__AIChat__Msg__Text table th,.Playground__AIChat__Msg__Text table td{border:1px solid var(--color-border-hover);text-align:left;padding:4px 8px}.Playground__AIChat__Msg__Text table th{background:var(--color-bg-active);font-weight:600}.Playground__AIChat__Msg--user .Playground__AIChat__Msg__Text{background:var(--color-bg-active);border-radius:12px 12px 4px;padding:8px 12px}.Playground__AIChat__Msg__Footer{opacity:0;justify-content:space-between;align-items:center;margin-top:4px;transition:opacity .15s;display:flex}.Playground__AIChat__Msg:hover .Playground__AIChat__Msg__Footer{opacity:1}.Playground__AIChat__Msg__Time{color:var(--color-text-tertiary);font-size:10px}.Playground__AIChat__Msg__CopyBtn{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;display:flex}.Playground__AIChat__Msg__CopyBtn:hover{color:var(--color-text-secondary)}.Playground__AIChat__Msg__Loading{gap:4px;padding:8px 0;display:flex}.Playground__AIChat__Msg__Loading span{background:var(--color-text-tertiary);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both aiChatDot}.Playground__AIChat__Msg__Loading span:first-child{animation-delay:-.32s}.Playground__AIChat__Msg__Loading span:nth-child(2){animation-delay:-.16s}.Playground__AIChat__ScrollBtn{background:var(--color-bg-active);border:1px solid var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;z-index:5;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:120px;left:50%;transform:translate(-50%)}.Playground__AIChat__ScrollBtn:hover{background:var(--color-border-hover);color:var(--color-text-primary)}.Playground__AIChat__Context{border-top:1px solid var(--color-bg-active);background:#3b82f60d;flex-shrink:0;padding:4px 12px}.Playground__AIChat__Context span{color:var(--color-accent-primary);font-size:10px}.Playground__AIChat__Input{border-top:1px solid var(--color-bg-active);flex-shrink:0;padding:8px}.Playground__AIChat__Input__Files{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.Playground__AIChat__Input__File{background:var(--color-bg-active);color:var(--color-text-secondary);border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;display:flex}.Playground__AIChat__Input__File span{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.Playground__AIChat__Input__File button{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex}.Playground__AIChat__Input__File button:hover{color:var(--color-danger)}.Playground__AIChat__Input__Row{background:var(--color-bg-elevated);border:1px solid var(--color-bg-active);border-radius:10px;align-items:flex-end;gap:4px;padding:6px 8px;transition:border-color .15s;display:flex}.Playground__AIChat__Input__Row:focus-within{border-color:var(--color-accent-primary)}.Playground__AIChat__Input__Row textarea{color:var(--color-text-primary);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:120px;font-family:inherit;font-size:13px;line-height:1.4}.Playground__AIChat__Input__Row textarea::placeholder{color:var(--color-text-tertiary)}.Playground__AIChat__Input__Row textarea:disabled{opacity:.5}.Playground__AIChat__Input__Actions{flex-shrink:0;gap:2px;display:flex}.Playground__AIChat__Input__Btn{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;display:flex}.Playground__AIChat__Input__Btn:hover{color:var(--color-text-secondary);background:var(--color-bg-active)}.Playground__AIChat__Input__Btn:disabled{opacity:.3;cursor:not-allowed}.Playground__AIChat__Input__SendBtn{background:var(--color-accent-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;padding:4px;display:flex}.Playground__AIChat__Input__SendBtn:hover{background:var(--color-accent-hover)}.Playground__AIChat__Input__SendBtn:disabled{background:var(--color-bg-active);color:var(--color-text-tertiary);cursor:not-allowed}@keyframes aiChatDot{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}
.Playground__DataTableApp{flex-direction:column;flex:1;display:flex;overflow:hidden}.Playground__DataTableApp__Header{border-bottom:1px solid var(--color-bg-hover);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.Playground__DataTableApp__Header__Left,.Playground__DataTableApp__Header__Right{align-items:center;gap:8px;display:flex}.Playground__DataTableApp__Info{color:var(--color-text-secondary);white-space:nowrap;font-size:12px}.Playground__DataTableApp__Search{background:var(--color-bg-input);border:1px solid var(--color-border-default);color:var(--color-text-secondary);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;display:flex}.Playground__DataTableApp__Search input{color:var(--color-text-primary);background:0 0;border:none;outline:none;width:160px;font-size:12px}.Playground__DataTableApp__Search input::placeholder{color:var(--color-text-tertiary)}.Playground__DataTableApp__Search input:focus{color:var(--color-text-primary)}.Playground__DataTableApp__ExportBtn{background:var(--color-bg-active);border:1px solid var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;display:flex}.Playground__DataTableApp__ExportBtn:hover{background:var(--color-border-hover);color:var(--color-text-primary)}.Playground__DataTableApp__TableWrapper{flex:1;overflow:auto}.Playground__DataTableApp__TableWrapper::-webkit-scrollbar{width:8px;height:8px}.Playground__DataTableApp__TableWrapper::-webkit-scrollbar-track{background:var(--color-bg-elevated)}.Playground__DataTableApp__TableWrapper::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:4px}.Playground__DataTableApp__Table{border-collapse:collapse;width:max-content;min-width:100%;font-size:12px}.Playground__DataTableApp__Table th{background:var(--color-bg-elevated);text-align:left;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-default);white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:1;padding:8px 12px;font-weight:600;position:sticky;top:0}.Playground__DataTableApp__Table th.rowNum{text-align:center;cursor:default;width:50px}.Playground__DataTableApp__Table th:hover:not(.rowNum){color:var(--color-text-primary)}.Playground__DataTableApp__Table th.smiles-col{min-width:200px}.Playground__DataTableApp__Table td{border-bottom:1px solid var(--color-bg-input);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:300px;padding:6px 12px;overflow:hidden}.Playground__DataTableApp__Table td.rowNum{text-align:center;color:var(--color-text-tertiary);font-size:11px}.Playground__DataTableApp__Table td.smiles-cell{color:#93c5fd;font-family:monospace;font-size:11px}.Playground__DataTableApp__Table tr:hover td{background:var(--color-bg-hover)}.Playground__DataTableApp__ThContent{align-items:center;gap:4px;display:flex}.Playground__DataTableApp__ThContent .sort-inactive{opacity:.3}.Playground__DataTableApp__Pagination{border-top:1px solid var(--color-bg-hover);color:var(--color-text-secondary);flex-shrink:0;justify-content:center;align-items:center;gap:12px;padding:8px;font-size:12px;display:flex}.Playground__DataTableApp__Pagination button{background:var(--color-bg-active);border:1px solid var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;border-radius:4px;align-items:center;padding:4px 8px;display:flex}.Playground__DataTableApp__Pagination button:hover:not(:disabled){background:var(--color-border-hover);color:var(--color-text-primary)}.Playground__DataTableApp__Pagination button:disabled{opacity:.3;cursor:not-allowed}
.Playground__MoleculeEditorApp{flex-direction:column;flex:1;display:flex;overflow:hidden}.Playground__MoleculeEditorApp__Toolbar{border-bottom:1px solid var(--color-bg-hover);background:var(--color-bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 12px;display:flex}.Playground__MoleculeEditorApp__Toolbar__Left{align-items:center;gap:12px;min-width:0;display:flex}.Playground__MoleculeEditorApp__Toolbar__Actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.Playground__MoleculeEditorApp__FileName{color:var(--color-text-primary);font-size:13px;font-weight:600}.Playground__MoleculeEditorApp__Smiles{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:11px;overflow:hidden}.Playground__MoleculeEditorApp__Btn{background:var(--color-bg-active);border:1px solid var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-size:12px;display:flex}.Playground__MoleculeEditorApp__Btn:hover{background:var(--color-border-hover);color:var(--color-text-primary)}.Playground__MoleculeEditorApp__Btn--primary{border-color:var(--color-accent-primary);color:#93c5fd;background:#1e3a5f}.Playground__MoleculeEditorApp__Btn--primary:hover{background:var(--color-accent-hover);color:#fff}.Playground__MoleculeEditorApp__Editor{flex:1;position:relative;overflow:hidden}.Playground__MoleculeEditorApp__Editor>div,.Playground__MoleculeEditorApp__Editor>div>div{height:100%}.Playground__MoleculeEditorApp__Editor .Ketcher__Embedded{height:100%!important;min-height:100%!important}html[data-theme=dark] .Playground__MoleculeEditorApp__Editor .Ketcher__Embedded,html:not([data-theme=light]) .Playground__MoleculeEditorApp__Editor .Ketcher__Embedded{filter:invert(.92)hue-rotate(180deg)}
.Playground__PropertyAnalyzer{flex-direction:column;flex:1;gap:16px;padding:16px;display:flex;overflow-y:auto}.Playground__PropertyAnalyzer::-webkit-scrollbar{width:6px}.Playground__PropertyAnalyzer::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}.Playground__PropertyAnalyzer__Input{flex-shrink:0}.Playground__PropertyAnalyzer__InputGroup label{color:var(--color-text-secondary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.Playground__PropertyAnalyzer__InputRow{gap:8px;display:flex}.Playground__PropertyAnalyzer__SmilesInput{background:var(--color-bg-input);border:1px solid var(--color-border-default);color:var(--color-text-primary);border-radius:8px;outline:none;flex:1;padding:10px 12px;font-family:monospace;font-size:13px}.Playground__PropertyAnalyzer__SmilesInput:focus{border-color:var(--color-accent-primary)}.Playground__PropertyAnalyzer__SmilesInput::placeholder{color:var(--color-text-tertiary)}.Playground__PropertyAnalyzer__Presets{flex-shrink:0}.Playground__PropertyAnalyzer__Presets__Label{color:var(--color-text-secondary);margin-bottom:8px;font-size:12px;font-weight:600}.Playground__PropertyAnalyzer__Presets__Grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.Playground__PropertyAnalyzer__PresetCard{background:var(--color-bg-elevated);border:1px solid var(--color-bg-hover);color:var(--color-text-secondary);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:14px 12px;transition:all .15s;display:flex;position:relative}.Playground__PropertyAnalyzer__PresetCard:hover:not(:disabled){border-color:var(--color-accent-primary);background:var(--color-bg-hover);color:var(--color-text-primary)}.Playground__PropertyAnalyzer__PresetCard.active{border-color:var(--color-accent-primary);color:#93c5fd;background:#1e3a5f}.Playground__PropertyAnalyzer__PresetCard:disabled{opacity:.4;cursor:not-allowed}.Playground__PropertyAnalyzer__PresetCard .spinning{position:absolute;top:8px;right:8px}.Playground__PropertyAnalyzer__PresetCard__Label{font-size:12px;font-weight:600}.Playground__PropertyAnalyzer__PresetCard__Desc{text-align:center;opacity:.7;font-size:10px}.Playground__PropertyAnalyzer__Results{flex:1}.Playground__PropertyAnalyzer__Results__Header{color:var(--color-text-primary);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.Playground__PropertyAnalyzer__Results__Header .spinning{color:var(--color-accent-primary)}.Playground__PropertyAnalyzer__Results__List{flex-direction:column;gap:8px;display:flex}.Playground__PropertyAnalyzer__ResultCard{background:var(--color-bg-elevated);border:1px solid var(--color-bg-hover);border-radius:8px;overflow:hidden}.Playground__PropertyAnalyzer__ResultCard__Header{cursor:pointer;color:var(--color-text-secondary);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.Playground__PropertyAnalyzer__ResultCard__Header:hover{background:var(--color-bg-hover)}.Playground__PropertyAnalyzer__ResultCard__Title{text-transform:capitalize;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.Playground__PropertyAnalyzer__ResultCard__Title .status-success{color:#22c55e}.Playground__PropertyAnalyzer__ResultCard__Title .status-error{color:var(--color-danger)}.Playground__PropertyAnalyzer__ResultCard__Body{padding:0 12px 12px}.Playground__PropertyAnalyzer__Properties{flex-direction:column;gap:4px;display:flex}.Playground__PropertyAnalyzer__Property{border-bottom:1px solid var(--color-bg-input);justify-content:space-between;align-items:center;padding:4px 0;font-size:12px;display:flex}.Playground__PropertyAnalyzer__Property__Key{color:var(--color-text-secondary);text-transform:capitalize}.Playground__PropertyAnalyzer__Property__Value{color:var(--color-text-primary);font-family:monospace;font-size:12px}.Playground__PropertyAnalyzer__Property__Value.status-good{color:#22c55e}.Playground__PropertyAnalyzer__Property__Value.status-warn{color:#f59e0b}.Playground__PropertyAnalyzer__Property__Value.status-bad{color:var(--color-danger)}.Playground__PropertyAnalyzer__Property__Value.status-neutral{color:var(--color-text-primary)}.Playground__PropertyAnalyzer__Error{color:var(--color-danger);background:#1a0505;border-radius:6px;padding:8px;font-size:12px}.Playground__PropertyAnalyzer__Empty{color:var(--color-text-tertiary);text-align:center;padding:12px;font-size:12px}
.Playground__Comparison{flex-direction:column;flex:1;gap:16px;padding:16px;display:flex;overflow-y:auto}.Playground__Comparison::-webkit-scrollbar{width:6px}.Playground__Comparison::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}.Playground__Comparison__Header{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.Playground__Comparison__Header__Left{color:var(--color-text-primary);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.Playground__Comparison__Header__Actions{gap:8px;display:flex}.Playground__Comparison__Count{color:var(--color-text-secondary);background:var(--color-bg-active);border-radius:8px;padding:2px 8px;font-size:11px;font-weight:400}.Playground__Comparison__AddBtn{background:var(--color-bg-active);border:1px solid var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;display:flex}.Playground__Comparison__AddBtn:hover{background:var(--color-border-hover);color:var(--color-text-primary)}.Playground__Comparison__RunBtn{border:1px solid var(--color-accent-primary);color:#93c5fd;cursor:pointer;background:#1e3a5f;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;display:flex}.Playground__Comparison__RunBtn:hover:not(:disabled){background:var(--color-accent-hover);color:#fff}.Playground__Comparison__RunBtn:disabled{opacity:.4;cursor:not-allowed}.Playground__Comparison__Slots{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.Playground__Comparison__Slot{background:var(--color-bg-elevated);border:1px solid var(--color-bg-hover);border-radius:10px;padding:12px}.Playground__Comparison__Slot__Header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.Playground__Comparison__Slot__Name{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-size:13px;font-weight:600}.Playground__Comparison__Slot__Remove{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.Playground__Comparison__Slot__Remove:hover{color:var(--color-danger);background:#1a0505}.Playground__Comparison__Slot__Input{gap:6px;display:flex}.Playground__Comparison__Slot__Input input{background:var(--color-bg-input);border:1px solid var(--color-border-default);color:var(--color-text-primary);border-radius:6px;outline:none;flex:1;min-width:0;padding:6px 8px;font-family:monospace;font-size:12px}.Playground__Comparison__Slot__Input input:focus{border-color:var(--color-accent-primary)}.Playground__Comparison__Slot__Input input::placeholder{color:var(--color-text-tertiary)}.Playground__Comparison__Slot__Analyze{background:var(--color-bg-active);border:1px solid var(--color-border-hover);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;padding:6px 8px}.Playground__Comparison__Slot__Analyze:hover:not(:disabled){background:var(--color-border-hover);color:var(--color-text-primary)}.Playground__Comparison__Slot__Analyze:disabled{opacity:.3;cursor:not-allowed}.Playground__Comparison__Empty{color:var(--color-text-tertiary);flex-direction:column;grid-column:1/-1;align-items:center;gap:12px;padding:40px 20px;display:flex}.Playground__Comparison__Empty p{margin:0;font-size:14px}.Playground__Comparison__Table{background:var(--color-bg-elevated);border:1px solid var(--color-bg-hover);border-radius:10px;overflow:hidden}.Playground__Comparison__Table table{border-collapse:collapse;width:100%;font-size:12px}.Playground__Comparison__Table th{text-align:center;color:var(--color-text-secondary);background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-default);white-space:nowrap;padding:8px 12px;font-weight:600}.Playground__Comparison__Table th:first-child{text-align:left}.Playground__Comparison__Table td{text-align:center;color:var(--color-text-primary);border-bottom:1px solid var(--color-bg-input);padding:6px 12px;font-family:monospace}.Playground__Comparison__Table td:first-child{text-align:left;font-family:inherit}.Playground__Comparison__Table td.prop-good{color:#22c55e}.Playground__Comparison__Table td.prop-warn{color:#f59e0b}.Playground__Comparison__Table td.prop-bad{color:var(--color-danger)}.Playground__Comparison__Table .prop-label{color:var(--color-text-secondary);font-weight:500}.Playground__Comparison__Table .prop-label .unit{color:var(--color-text-tertiary);margin-left:4px;font-size:10px}.Playground__Comparison__Table__Header{color:var(--color-text-primary);border-bottom:1px solid var(--color-border-default);padding:10px 12px;font-size:13px;font-weight:600}.Playground__Comparison__Similarity{background:var(--color-bg-elevated);border:1px solid var(--color-bg-hover);border-radius:10px;padding:12px}.Playground__Comparison__Similarity__Header{color:var(--color-text-secondary);margin-bottom:8px;font-size:12px;font-weight:600}.Playground__Comparison__Similarity__Value{color:var(--color-text-primary);font-size:14px}.Playground__Comparison__Similarity__Value strong{color:var(--color-accent-primary)}
.Playground__RightPanel{background:var(--color-bg-elevated);border-left:1px solid var(--color-bg-hover);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.Playground__RightPanel__Container{flex-direction:column;height:100%;display:flex}.Playground__RightPanel__Tabs{border-bottom:1px solid var(--color-bg-hover);flex-shrink:0;display:flex}.Playground__RightPanel__Tab{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:12px;font-weight:500;transition:color .15s,border-color .15s;display:flex}.Playground__RightPanel__Tab:hover{color:var(--color-text-primary)}.Playground__RightPanel__Tab.active{color:var(--color-text-primary);border-bottom-color:var(--color-accent-primary)}.Playground__ToolPalette{flex-direction:column;flex:1;display:flex;overflow:hidden}.Playground__ToolPalette__Search{color:var(--color-text-secondary);align-items:center;gap:8px;padding:8px 12px;display:flex}.Playground__ToolPalette__Search input{background:var(--color-bg-input);border:1px solid var(--color-border-default);color:var(--color-text-primary);border-radius:6px;outline:none;flex:1;padding:6px 8px;font-size:12px}.Playground__ToolPalette__Search input:focus{border-color:var(--color-accent-primary)}.Playground__ToolPalette__Search input::placeholder{color:var(--color-text-tertiary)}.Playground__ToolPalette__Categories{flex-wrap:wrap;gap:4px;padding:4px 12px 8px;display:flex}.Playground__ToolPalette__Category{border:1px solid var(--color-border-default);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:12px;padding:3px 8px;font-size:11px;transition:all .15s}.Playground__ToolPalette__Category:hover{border-color:var(--color-text-tertiary);color:var(--color-text-primary)}.Playground__ToolPalette__Category.active{border-color:var(--color-accent-primary);color:#93c5fd;background:#1e3a5f}.Playground__ToolPalette__Category .count{opacity:.6;margin-left:4px}.Playground__ToolPalette__List{flex:1;padding:0 8px;overflow-y:auto}.Playground__ToolPalette__List::-webkit-scrollbar{width:4px}.Playground__ToolPalette__List::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:2px}.Playground__ToolPalette__ToolCard{cursor:pointer;border-radius:8px;margin-bottom:4px;padding:8px 10px;transition:background .1s}.Playground__ToolPalette__ToolCard:hover{background:var(--color-bg-hover)}.Playground__ToolPalette__ToolCard.active{background:var(--color-bg-active);border:1px solid var(--color-border-hover)}.Playground__ToolPalette__ToolCard__Name{color:var(--color-text-primary);margin-bottom:2px;font-size:12px;font-weight:600}.Playground__ToolPalette__ToolCard__Desc{color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;display:-webkit-box;overflow:hidden}.Playground__ToolPalette__Empty{text-align:center;color:var(--color-text-tertiary);padding:24px;font-size:13px}.Playground__ToolPalette__Executor{border-top:1px solid var(--color-bg-hover);flex-shrink:0;max-height:280px;padding:12px;overflow-y:auto}.Playground__ToolPalette__Executor__Header{color:var(--color-text-primary);margin-bottom:10px;font-size:13px}.Playground__ToolPalette__Executor__Field{margin-bottom:8px}.Playground__ToolPalette__Executor__Field label{color:var(--color-text-secondary);margin-bottom:4px;font-size:11px;display:block}.Playground__ToolPalette__Executor__Field label .required{color:var(--color-danger);margin-left:2px}.Playground__ToolPalette__Executor__Field input{background:var(--color-bg-input);border:1px solid var(--color-border-default);width:100%;color:var(--color-text-primary);border-radius:6px;outline:none;padding:6px 8px;font-size:12px}.Playground__ToolPalette__Executor__Field input:focus{border-color:var(--color-accent-primary)}.Playground__ToolPalette__Executor__Field input::placeholder{color:var(--color-text-tertiary)}.Playground__ToolPalette__Executor__RunBtn{background:var(--color-accent-primary);width:100%;color:var(--color-text-on-accent);cursor:pointer;border:none;border-radius:8px;padding:8px;font-size:13px;font-weight:600;transition:background .15s}.Playground__ToolPalette__Executor__RunBtn:hover:not(:disabled){background:var(--color-accent-hover)}.Playground__ToolPalette__Executor__RunBtn:disabled{opacity:.5;cursor:not-allowed}.Playground__ToolPalette__Results{border-top:1px solid var(--color-bg-hover);flex-shrink:0;padding:8px 12px}.Playground__ToolPalette__Results__Header{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:11px;font-weight:600}.Playground__ToolPalette__Results__Item{justify-content:space-between;align-items:center;padding:4px 0;font-size:12px;display:flex}.Playground__ToolPalette__Results__Item .name{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.Playground__ToolPalette__Results__Item .status{border-radius:4px;padding:1px 6px;font-size:10px}.Playground__ToolPalette__Results__Item .status.success{color:#6ee7b7;background:#064e3b}.Playground__ToolPalette__Results__Item .status.error{color:#fca5a5;background:#450a0a}
.Playground__StatusBar{background:var(--color-bg-active);border-top:1px solid var(--color-border-hover);height:28px;color:var(--color-text-secondary);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 8px;font-size:11px;display:flex}.Playground__StatusBar__Left,.Playground__StatusBar__Center,.Playground__StatusBar__Right{align-items:center;gap:8px;display:flex}.Playground__StatusBar__Toggle{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:3px;align-items:center;padding:2px 4px;display:flex}.Playground__StatusBar__Toggle:hover{color:var(--color-text-primary);background:var(--color-border-hover)}.Playground__StatusBar__Toggle.active{color:#93c5fd}.Playground__StatusBar__Item{align-items:center;gap:4px;display:flex}
@keyframes customSelectFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.CustomSelect{width:100%;position:relative}.CustomSelect__Trigger{background:var(--color-bg-input);border:1px solid var(--color-border-default);width:100%;color:var(--color-text-primary);cursor:pointer;text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-size:13px;transition:all .15s;display:flex}.CustomSelect__Trigger:hover{border-color:var(--color-border-hover,var(--color-border-default))}.CustomSelect__Trigger--open{border-color:var(--color-accent-primary);box-shadow:0 0 0 2px var(--color-accent-subtle)}.CustomSelect__Value{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.CustomSelect__Placeholder{color:var(--color-text-tertiary,#6b7280);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.CustomSelect__Arrow{color:var(--color-text-tertiary,#6b7280);flex-shrink:0;transition:transform .2s}.CustomSelect__Arrow--open{transform:rotate(180deg)}.CustomSelect__Dropdown{background:var(--color-bg-elevated,var(--color-bg-input));border:1px solid var(--color-border-default);z-index:100;border-radius:8px;animation:.15s customSelectFadeIn;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 8px 24px #00000026}.CustomSelect__Search{border-bottom:1px solid var(--color-border-default);align-items:center;gap:8px;padding:8px 10px;display:flex}.CustomSelect__SearchIcon{color:var(--color-text-tertiary,#6b7280);flex-shrink:0}.CustomSelect__SearchInput{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:13px}.CustomSelect__SearchInput::placeholder{color:var(--color-text-tertiary,#6b7280)}.CustomSelect__Options{max-height:220px;padding:4px;overflow-y:auto}.CustomSelect__Options::-webkit-scrollbar{width:4px}.CustomSelect__Options::-webkit-scrollbar-thumb{background:var(--color-border-default);border-radius:2px}.CustomSelect__Option{width:100%;color:var(--color-text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:8px 10px;font-size:13px;transition:background .1s;display:block}.CustomSelect__Option:hover{background:var(--color-bg-hover,#80808014)}.CustomSelect__Option--selected{color:var(--color-accent-primary);background:var(--color-accent-subtle,#6366f114);font-weight:500}.CustomSelect__Empty{text-align:center;color:var(--color-text-tertiary,#6b7280);padding:16px 10px;font-size:13px}.CustomSelect--compact{width:auto;min-width:80px}.CustomSelect--compact .CustomSelect__Trigger{background:var(--color-bg-elevated,var(--color-bg-input));color:var(--color-text-secondary);border-right:none;border-radius:6px 0 0 6px;gap:4px;padding:9px 8px;font-weight:500}.CustomSelect--compact .CustomSelect__Dropdown{min-width:100px}.Index .CustomSelect__Trigger{color:#fff;background-color:#13102e;border:1px solid #8b5cf633;border-radius:12px;padding:14px 16px;font-size:14px}.Index .CustomSelect__Trigger:hover{border-color:#8b5cf666}.Index .CustomSelect__Trigger--open{background-color:#1a1640;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.Index .CustomSelect__Placeholder,.Index .CustomSelect__Arrow{color:#6b7280}.Index .CustomSelect__Dropdown{background:#1a1640;border-color:#8b5cf64d;box-shadow:0 12px 32px #00000080}.Index .CustomSelect__Search{border-bottom-color:#8b5cf626}.Index .CustomSelect__SearchIcon{color:#6b7280}.Index .CustomSelect__SearchInput{color:#fff}.Index .CustomSelect__SearchInput::placeholder{color:#6b7280}.Index .CustomSelect__Options::-webkit-scrollbar-thumb{background:#8b5cf64d}.Index .CustomSelect__Option{color:#ffffffd9}.Index .CustomSelect__Option:hover{background:#8b5cf626}.Index .CustomSelect__Option--selected{color:#a78bfa;background:#8b5cf61a}.Index .CustomSelect__Empty{color:#6b7280}.Index .CustomSelect--compact .CustomSelect__Trigger{color:#a78bfa;background-color:#8b5cf61a;border:1px solid #8b5cf633;border-right:none;border-radius:12px 0 0 12px;padding:14px 8px;font-weight:500}
