:root {
    --osb-sidebar-width: 240px;
    --osb-accent: #6366f1;
}

body {
    background-color: var(--bs-body-bg);
}

.osb-wrapper {
    display: flex;
    min-height: 100vh;
}

.osb-sidebar {
    width: var(--osb-sidebar-width);
    flex-shrink: 0;
    background: #14161f;
    color: #cfd2e3;
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
    transition: transform .25s ease;
}

.osb-sidebar-brand {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: 1.2rem 1.2rem;
    font-weight: 700;
    font-size: 1.1rem;
    color: #fff;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.osb-sidebar-brand i { color: var(--osb-accent); font-size: 1.4rem; }

.osb-menu {
    list-style: none;
    margin: 0;
    padding: .75rem 0;
    flex: 1;
    overflow-y: auto;
}

.osb-menu li a {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .6rem 1.2rem;
    color: #cfd2e3;
    text-decoration: none;
    font-size: .92rem;
    border-left: 3px solid transparent;
}

.osb-menu li a:hover {
    background: rgba(99,102,241,.12);
    color: #fff;
}

.osb-menu li.active a {
    background: rgba(99,102,241,.18);
    border-left-color: var(--osb-accent);
    color: #fff;
}

.osb-sidebar-footer {
    padding: 1rem 1.2rem;
    border-top: 1px solid rgba(255,255,255,.08);
    color: #7d8095;
}

.osb-main {
    flex: 1;
    margin-left: var(--osb-sidebar-width);
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.osb-topbar {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .85rem 1.5rem;
    background: var(--bs-body-bg);
    border-bottom: 1px solid rgba(127,127,127,.15);
    position: sticky;
    top: 0;
    z-index: 1020;
}

.osb-topbar-title { font-weight: 600; }
.osb-topbar-actions { margin-left: auto; display: flex; gap: .5rem; align-items: center; }

.osb-content { padding: 1.5rem; }

.osb-card {
    background: var(--bs-tertiary-bg, #1c1e29);
    border: 1px solid rgba(127,127,127,.15);
    border-radius: .75rem;
    padding: 1rem 1.1rem;
}
.osb-card-icon { font-size: 1.4rem; margin-bottom: .3rem; }
.osb-card-label { font-size: .78rem; opacity: .7; text-transform: uppercase; letter-spacing: .03em; }
.osb-card-value { font-size: 1.6rem; font-weight: 700; }
.osb-card-sub { font-size: .78rem; opacity: .6; }

.osb-panel {
    background: var(--bs-tertiary-bg, #1c1e29);
    border: 1px solid rgba(127,127,127,.15);
    border-radius: .75rem;
    padding: 1rem 1.2rem;
}
.osb-table th { width: 40%; opacity: .7; font-weight: 500; }

.osb-console-output {
    background: #0d0e14;
    color: #9ef7a0;
    border-radius: .5rem;
    padding: 1rem;
    font-size: .82rem;
    min-height: 280px;
    max-height: 480px;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
}

.osb-login-body {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at top, #1c1e29, #0d0e14 70%);
}
.osb-login-card {
    width: 100%;
    max-width: 380px;
    background: #14161f;
    border: 1px solid rgba(127,127,127,.15);
    border-radius: 1rem;
    padding: 2rem;
}
.osb-login-icon { font-size: 2.6rem; color: var(--osb-accent); }

@media (max-width: 991.98px) {
    .osb-sidebar { transform: translateX(-100%); }
    .osb-sidebar.show { transform: translateX(0); }
    .osb-main { margin-left: 0; }
}
.server-inventory-card { transition: transform .15s ease, border-color .15s ease; }
.server-inventory-card:hover { transform: translateY(-2px); border-color: rgba(13,110,253,.45); }
.server-inventory-card .btn-link { text-decoration: none; }
.min-w-0 { min-width: 0; }
.osb-terminal-toolbar { background: rgba(0,0,0,.2); border-bottom: 1px solid rgba(127,127,127,.15); }
.osb-console-professional { min-height: 500px; max-height: 62vh; border-radius: 0; line-height: 1.5; }
.osb-history-output { max-height: 140px; overflow: auto; background: #0d0e14; color: #9ef7a0; padding: .65rem; border-radius: .35rem; white-space: pre-wrap; }

/* Build 014 - Professional File Manager */
.osb-file-workspace{display:grid;grid-template-columns:minmax(240px,28%) minmax(360px,1fr) minmax(220px,24%);gap:1rem;min-height:650px}.osb-file-browser,.osb-file-editor-panel,.osb-file-properties{min-width:0;overflow:hidden}.osb-file-list{max-height:680px;overflow:auto;padding:.5rem}.osb-file-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:.5rem;align-items:center;width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:.5rem .6rem;border-radius:.4rem}.osb-file-item:hover,.osb-file-item.active{background:rgba(13,110,253,.18)}.osb-file-item small{color:var(--bs-secondary-color)}.osb-file-editor{display:block;width:100%;min-height:570px;resize:none;border:0;outline:0;padding:1rem;background:#0b0d13;color:#d9e2f2;line-height:1.55;tab-size:4}.osb-file-editor:disabled{opacity:.75}.osb-file-path{min-width:260px}.osb-file-search{width:min(360px,100%)}#osbFileSearchResults{max-height:330px;overflow:auto}@media(max-width:1199px){.osb-file-workspace{grid-template-columns:280px 1fr}.osb-file-properties{grid-column:1/-1}}@media(max-width:767px){.osb-file-workspace{grid-template-columns:1fr}.osb-file-editor{min-height:420px}.osb-file-path,.osb-file-search{width:100%}}
/* Build 015 - Professional Database Manager */
.osb-db-result{background:#090b10;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:1rem;max-height:320px;overflow:auto;color:#8dfca7;white-space:pre-wrap}
#dbRowsBody td,#dbRowsHead th{max-width:260px;overflow:hidden;text-overflow:ellipsis}

/* Build 016 — Professional Log Center */
.osb-log-viewer{height:520px;overflow:auto;background:#090b10;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.82rem;line-height:1.5}
.osb-log-line{display:grid;grid-template-columns:58px 72px 155px minmax(0,1fr);gap:10px;padding:5px 12px;border-bottom:1px solid rgba(255,255,255,.035);align-items:start}
.osb-log-line:hover{background:rgba(255,255,255,.035)}
.osb-log-number{color:#596273;text-align:right;user-select:none}
.osb-log-level{display:inline-flex;justify-content:center;border-radius:4px;padding:1px 5px;font-size:.7rem;font-weight:700}
.osb-log-error{color:#ff6b79;background:rgba(220,53,69,.14)}
.osb-log-warning{color:#ffcc66;background:rgba(255,193,7,.12)}
.osb-log-info{color:#70a7ff;background:rgba(13,110,253,.12)}
.osb-log-debug{color:#a8b0bd;background:rgba(108,117,125,.14)}
.osb-log-time{color:#7f8a9a;white-space:nowrap}
.osb-log-message{color:#d8dee9;white-space:pre-wrap;overflow-wrap:anywhere}
.osb-log-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:220px;color:#758093;padding:2rem;text-align:center}
@media (max-width:900px){.osb-log-line{grid-template-columns:42px 62px minmax(0,1fr)}.osb-log-time{display:none}.osb-log-viewer{height:430px}}

/* Build 017 — Professional Backup Center */
#osbBackupsRoot code{color:#6fd3ff}.backup-integrity-ok{color:var(--bs-success)}

/* Build 044 — SSH Terminal Workspace */
.osb-terminal-shell { background:#151922; }
.osb-terminal-tabs { background:#11151d; border-bottom:1px solid rgba(127,127,127,.18); min-height:42px; overflow-x:auto; }
.osb-terminal-tab { border:1px solid rgba(127,127,127,.22); border-bottom:0; background:#1a202b; color:#aeb8c6; border-radius:.5rem .5rem 0 0; padding:.42rem .7rem; white-space:nowrap; }
.osb-terminal-tab.active { background:#0d1117; color:#fff; border-color:#2f81f7; }
.osb-tab-close { margin-left:.45rem; opacity:.6; font-size:1.05rem; }
.osb-tab-close:hover { opacity:1; color:#ff6b6b; }
.osb-ansi-terminal { background:#05070a; color:#d7e0ea; min-height:520px; max-height:64vh; overflow:auto; padding:1rem; font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace; font-size:.91rem; line-height:1.45; white-space:pre-wrap; word-break:break-word; }
.osb-terminal-line { min-height:1.2em; }
.osb-terminal-completion { margin-top:.55rem; padding:.55rem; border:1px solid rgba(127,127,127,.2); border-radius:.45rem; background:rgba(0,0,0,.18); display:flex; flex-wrap:wrap; gap:.35rem; max-height:150px; overflow:auto; }


/* Build 045 — Context Aware Terminal Completion */
.osb-terminal-completion .osb-completion-item.active{background:#0d6efd;border-color:#0d6efd;color:#fff;box-shadow:0 0 0 .15rem rgba(13,110,253,.18)}
.osb-terminal-completion{position:relative;z-index:6}


/* Build 048 — Remote File Explorer PRO */
.osb-rf-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;min-width:0}.osb-rf-breadcrumb .btn-link{font-size:.82rem}.osb-rf-search-results{max-height:260px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.35rem}.osb-rf-search-item{border:1px solid rgba(127,127,127,.15);background:rgba(0,0,0,.12);color:inherit;border-radius:.4rem;padding:.5rem .65rem;display:flex;align-items:center;gap:.55rem;text-align:left}.osb-rf-search-item:hover{background:rgba(13,110,253,.14);border-color:rgba(13,110,253,.35)}.osb-file-item.active{outline:1px solid rgba(13,110,253,.45)}#osbRfLanguage{font-size:.68rem;letter-spacing:.06em}.osb-file-editor{caret-color:#fff}.osb-file-browser{user-select:none}@media(max-width:767px){.osb-rf-search-results{grid-template-columns:1fr}}

/* OSB Build 049 - File Studio PRO */
.osb-file-studio{position:relative;display:grid;grid-template-columns:260px minmax(270px,340px) minmax(420px,1fr) 220px;gap:.75rem;min-height:720px}.osb-studio-tree-panel,.osb-studio-main,.osb-studio-editor-panel,.osb-studio-actions{min-width:0;overflow:hidden}.osb-studio-panel-title,.osb-studio-list-head,.osb-studio-editor-head{min-height:48px;padding:.7rem .85rem;border-bottom:1px solid rgba(127,127,127,.16);display:flex;align-items:center;gap:.5rem}.osb-studio-tree{height:670px;overflow:auto;padding:.45rem .3rem;font-size:.83rem}.osb-tree-node{position:relative}.osb-tree-node>.osb-tree-children{display:none;padding-left:17px}.osb-tree-node.expanded>.osb-tree-children{display:block}.osb-tree-toggle{border:0;background:transparent;color:var(--bs-secondary-color);width:22px;height:28px;padding:0}.osb-tree-label{border:0;background:transparent;color:inherit;display:inline-flex;align-items:center;gap:.4rem;max-width:calc(100% - 26px);height:28px;padding:0 .3rem;border-radius:.3rem;text-align:left}.osb-tree-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.osb-tree-label:hover,.osb-tree-label.active{background:rgba(13,110,253,.16)}.osb-tree-loading,.osb-tree-empty,.osb-tree-error{padding:.25rem .6rem;color:var(--bs-secondary-color);font-size:.75rem}.osb-tree-error{color:var(--bs-danger)}.osb-studio-file-list{height:670px;max-height:none}.osb-studio-editor-panel{display:flex;flex-direction:column;min-height:720px}.osb-studio-tabs{height:40px;display:flex;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid rgba(127,127,127,.16);background:rgba(0,0,0,.12)}.osb-studio-empty-tab{padding:.65rem .8rem;color:var(--bs-secondary-color);font-size:.8rem}.osb-studio-tab{height:40px;display:flex;align-items:center;gap:.4rem;flex:0 0 auto;max-width:220px;border:0;border-right:1px solid rgba(127,127,127,.13);background:transparent;color:var(--bs-secondary-color);padding:0 .55rem}.osb-studio-tab.active{background:#0b0d13;color:#fff;border-top:2px solid var(--bs-primary)}.osb-studio-tab span:not(.osb-tab-close):not(.osb-tab-dirty){max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.osb-tab-close{font-size:1rem;opacity:.55;margin-left:.15rem}.osb-tab-close:hover{opacity:1}.osb-tab-dirty{font-size:.65rem;color:var(--bs-warning)}.osb-studio-editor-head{min-height:42px;padding:.45rem .7rem}.osb-studio-editor-wrap{display:grid;grid-template-columns:52px minmax(0,1fr);flex:1;min-height:0;background:#0b0d13}.osb-studio-line-numbers{overflow:hidden;text-align:right;white-space:pre;padding:1rem .65rem;background:#080a0f;color:#586174;border-right:1px solid rgba(127,127,127,.12);font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;user-select:none}.osb-file-editor.osb-studio-editor{min-height:0;height:100%;resize:none;padding:1rem;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:pre;overflow:auto}.osb-studio-statusbar{min-height:44px;border-top:1px solid rgba(127,127,127,.16);padding:.45rem .65rem;display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.osb-studio-actions{min-height:720px}.osb-studio-drop-overlay{position:absolute;inset:0;z-index:50;background:rgba(6,13,25,.9);border:2px dashed var(--bs-info);border-radius:.55rem;display:none;align-items:center;justify-content:center;flex-direction:column;gap:.45rem;font-size:1rem;pointer-events:none}.osb-studio-drop-overlay.show{display:flex}.osb-studio-drop-overlay i{font-size:3rem;color:var(--bs-info)}.osb-studio-drop-overlay span{font-size:.8rem;color:var(--bs-secondary-color)}
@media(max-width:1500px){.osb-file-studio{grid-template-columns:230px 300px minmax(380px,1fr)}.osb-studio-actions{grid-column:1/-1;min-height:auto}.osb-studio-actions>.p-3{display:grid;grid-template-columns:minmax(200px,1fr) minmax(200px,1fr);gap:1rem}.osb-studio-actions hr{display:none}}
@media(max-width:1100px){.osb-file-studio{grid-template-columns:240px minmax(0,1fr)}.osb-studio-main{grid-column:1}.osb-studio-editor-panel{grid-column:2;grid-row:1/3}.osb-studio-actions{grid-column:1/-1}}
@media(max-width:767px){.osb-file-studio{grid-template-columns:1fr}.osb-studio-tree-panel,.osb-studio-main,.osb-studio-editor-panel,.osb-studio-actions{grid-column:auto!important;grid-row:auto!important}.osb-studio-tree,.osb-studio-file-list{height:360px}.osb-studio-editor-panel{min-height:620px}.osb-studio-actions>.p-3{display:block}}
/* Build 050.001 - File Studio remote tree engine */
.osb-tree-toggle.invisible{visibility:hidden;pointer-events:none}
.osb-tree-label.active{outline:1px solid rgba(13,110,253,.35);background:rgba(13,110,253,.20)}
.osb-studio-tree{contain:layout paint;scrollbar-gutter:stable}
.osb-studio-file-list{scrollbar-gutter:stable}
/* Build 050.003 — Advanced File Operations */
.osb-rf-trash-backdrop{position:fixed;inset:0;z-index:1080;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:24px}.osb-rf-trash-card{width:min(900px,96vw);max-height:82vh;display:flex;flex-direction:column}.osb-rf-trash-list{overflow:auto}.osb-rf-trash-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px;border-bottom:1px solid rgba(255,255,255,.08)}.osb-rf-trash-item:last-child{border-bottom:0}.osb-rf-context{position:fixed;z-index:1090;min-width:210px;background:#151a24;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:6px;box-shadow:0 18px 50px rgba(0,0,0,.45)}.osb-rf-context button{display:flex;width:100%;gap:10px;align-items:center;border:0;background:transparent;color:#e7ebf3;padding:8px 10px;border-radius:7px;text-align:left}.osb-rf-context button:hover{background:rgba(255,255,255,.08)}.osb-rf-context hr{margin:5px 0;border-color:rgba(255,255,255,.12)}

/* Build 050.004 — selección múltiple y operaciones reales */
.osb-file-item.active{outline:1px solid var(--bs-primary);background:rgba(13,110,253,.18)!important}
.osb-file-item.osb-drop-target{outline:2px dashed #20c997;background:rgba(32,201,151,.13)!important}
.osb-file-item[draggable=true]{cursor:default}.osb-file-item[draggable=true]:active{cursor:grabbing}
.osb-rf-operation{position:fixed;right:24px;bottom:24px;z-index:1100;width:min(420px,calc(100vw - 48px))}.osb-rf-operation-card{padding:16px;box-shadow:0 18px 50px rgba(0,0,0,.45);border:1px solid rgba(13,110,253,.45)}
#osbRfSelectionCount:before{content:'sel ';font-weight:400;opacity:.75}

.osb-tree-label.osb-drop-target{background:rgba(32,201,151,.15)!important;outline:1px dashed #20c997}

/* Build 050.005 — Monaco Editor PRO */
.osb-studio-editor-toolbar{display:flex;gap:.4rem;flex-wrap:wrap;padding:.4rem .55rem;border-bottom:1px solid rgba(127,127,127,.16);background:rgba(0,0,0,.13)}
.osb-studio-editor-wrap{position:relative}.osb-monaco-editor{position:absolute;inset:0;min-width:0;min-height:0;background:#1e1e1e}.osb-monaco-editor:not(.d-none){display:block!important}.osb-studio-editor-wrap:has(.osb-monaco-editor:not(.d-none)){grid-template-columns:0 minmax(0,1fr)}.osb-studio-editor-wrap:has(.osb-monaco-editor:not(.d-none)) .osb-studio-line-numbers{display:none}.osb-rf-diff-backdrop{position:fixed;inset:0;z-index:1080;background:rgba(0,0,0,.72);padding:3vh 3vw;display:flex;align-items:center;justify-content:center}.osb-rf-diff-backdrop.d-none{display:none!important}.osb-rf-diff-card{width:min(1500px,94vw);height:90vh;display:flex;flex-direction:column;overflow:hidden}.osb-rf-diff-host{flex:1;min-height:0;background:#1e1e1e}.osb-studio-editor-toolbar .btn.active{border-color:var(--bs-primary);color:var(--bs-primary)}

/* Build 050.006 — Workspace sessions, Terminal sync & Git foundation */
.osb-rf-git-backdrop{position:fixed;inset:0;z-index:1080;background:rgba(0,0,0,.72);padding:5vh 4vw;display:flex;align-items:center;justify-content:center}.osb-rf-git-backdrop.d-none{display:none!important}.osb-rf-git-card{width:min(1200px,94vw);height:min(760px,88vh);display:flex;flex-direction:column;overflow:hidden}.osb-git-list{display:grid;gap:.4rem}.osb-git-entry,.osb-git-commit{display:flex;gap:.65rem;align-items:flex-start;padding:.5rem .6rem;border:1px solid rgba(127,127,127,.14);border-radius:.4rem;background:rgba(0,0,0,.12)}.osb-git-entry code{min-width:2.2rem;color:var(--bs-warning)}.osb-git-commit code{min-width:4.6rem;color:var(--bs-info)}

/* Build 050.007 - AI Code Assistant */
.osb-rf-ai-backdrop{position:fixed;inset:0;z-index:1090;background:rgba(0,0,0,.76);padding:3vh 3vw;display:flex;align-items:center;justify-content:center}.osb-rf-ai-backdrop.d-none{display:none!important}.osb-rf-ai-card{width:min(1550px,95vw);height:92vh;display:flex;flex-direction:column;overflow:hidden}.osb-rf-ai-body{display:grid;grid-template-columns:280px minmax(0,1fr);flex:1;min-height:0}.osb-rf-ai-actions{padding:1rem;border-right:1px solid rgba(127,127,127,.16);overflow:auto;background:rgba(0,0,0,.12)}.osb-rf-ai-actions>button{width:100%;display:flex;align-items:flex-start;gap:.7rem;text-align:left;border:1px solid rgba(127,127,127,.18);background:rgba(255,255,255,.025);color:inherit;border-radius:.45rem;padding:.65rem .7rem;margin-bottom:.5rem}.osb-rf-ai-actions>button:hover{border-color:rgba(13,110,253,.55);background:rgba(13,110,253,.1)}.osb-rf-ai-actions>button:disabled{opacity:.55}.osb-rf-ai-actions>button i{font-size:1.05rem;color:var(--bs-info);margin-top:.1rem}.osb-rf-ai-actions>button span{display:flex;flex-direction:column;min-width:0}.osb-rf-ai-actions>button small{color:var(--bs-secondary-color);font-size:.72rem}.osb-rf-ai-result{min-width:0;min-height:0;position:relative}.osb-rf-ai-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;padding:2rem;color:var(--bs-secondary-color);text-align:center}.osb-rf-ai-empty i{font-size:2.4rem;color:var(--bs-primary)}.osb-rf-ai-diff{flex:1;min-height:0;background:#1e1e1e}.osb-rf-ai-proposal{min-height:0}.osb-rf-ai-result .h-100{min-height:0}.osb-rf-ai-result .d-flex.flex-column{min-height:0}.osb-rf-ai-result #osbRfAiProposal{min-height:0}.osb-rf-ai-result #osbRfAiProposal:not(.d-none){display:flex!important}
@media(max-width:900px){.osb-rf-ai-card{height:95vh}.osb-rf-ai-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.osb-rf-ai-actions{border-right:0;border-bottom:1px solid rgba(127,127,127,.16);max-height:300px}.osb-rf-ai-actions>button{display:inline-flex;width:calc(50% - .3rem);vertical-align:top;margin-right:.3rem}}


/* Build 050.008 — Workspace PRO */
.osb-workspace-tabsbar{display:grid;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid rgba(127,127,127,.16);background:rgba(0,0,0,.12)}
.osb-workspace-tabsbar .osb-studio-tabs{border-bottom:0;min-width:0}
.osb-workspace-tabtools{display:flex;align-items:center;border-left:1px solid rgba(127,127,127,.14);padding:0 .2rem}
.osb-workspace-tabtools .btn{color:var(--bs-secondary-color);padding:.3rem .42rem}.osb-workspace-tabtools .btn:hover{color:#fff}
.osb-studio-tab{user-select:none}.osb-studio-tab.dragging{opacity:.4}.osb-studio-tab.drag-over{box-shadow:inset 3px 0 0 var(--bs-info)}.osb-studio-tab.dirty{font-style:italic}.osb-studio-tab.dirty.active{font-style:normal}
.osb-workspace-recent{position:absolute;z-index:65;top:40px;right:0;width:min(520px,90%);max-height:420px;background:#111722;border:1px solid rgba(127,127,127,.25);box-shadow:0 18px 55px rgba(0,0,0,.48);border-radius:0 0 0 .55rem;overflow:hidden}
.osb-studio-editor-panel{position:relative}.osb-workspace-recent-head{display:flex;align-items:center;padding:.55rem .7rem;border-bottom:1px solid rgba(127,127,127,.14)}.osb-workspace-recent-list{max-height:360px;overflow:auto;padding:.35rem}
.osb-rf-recent-item{width:100%;display:flex;align-items:flex-start;gap:.6rem;border:0;background:transparent;color:inherit;text-align:left;padding:.5rem .55rem;border-radius:.35rem}.osb-rf-recent-item:hover{background:rgba(13,110,253,.13)}.osb-rf-recent-item>i{font-size:1rem;margin-top:.1rem}.osb-rf-recent-item>span{display:flex;min-width:0;flex-direction:column}.osb-rf-recent-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.osb-rf-recent-item small{color:var(--bs-secondary-color);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:430px}

/* Build 055.6.42 — Safe Dashboard Visual Redesign (scoped, no backend changes) */
.osb-dashboard-v2{--dash-border:rgba(148,163,184,.16);--dash-muted:#8c98aa;--dash-panel:rgba(20,24,34,.88);--dash-panel-2:rgba(25,30,42,.86);display:flex;flex-direction:column;gap:1rem;max-width:1600px;margin:0 auto}.osb-dash-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.6rem 1.7rem;border:1px solid var(--dash-border);border-radius:1.1rem;background:linear-gradient(135deg,rgba(30,41,59,.92),rgba(17,24,39,.94));box-shadow:0 18px 55px rgba(0,0,0,.18)}.osb-dash-hero:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-120px;top:-180px;background:radial-gradient(circle,rgba(99,102,241,.3),transparent 68%);pointer-events:none}.osb-dash-hero-copy,.osb-dash-hero-actions{position:relative;z-index:1}.osb-dash-eyebrow,.osb-dash-kicker{display:inline-flex;align-items:center;gap:.45rem;color:#8da2fb;text-transform:uppercase;letter-spacing:.08em;font-size:.69rem;font-weight:700}.osb-dash-hero h2{font-size:1.7rem;margin:.35rem 0 .3rem}.osb-dash-hero p{margin:0;color:var(--dash-muted);max-width:700px}.osb-dash-hero-actions{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;justify-content:flex-end}.osb-dash-live{display:inline-flex;align-items:center;gap:.45rem;color:#b9c2d0;font-size:.78rem}.osb-dash-live span{width:8px;height:8px;border-radius:50%;background:#35d07f;box-shadow:0 0 0 5px rgba(53,208,127,.1)}.osb-dash-overview-grid{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(420px,1.1fr);gap:1rem}.osb-dash-health-card,.osb-dash-summary-card,.osb-dash-metric,.osb-dash-service,.osb-dash-info-panel{border:1px solid var(--dash-border);background:var(--dash-panel);border-radius:1rem}.osb-dash-health-card{padding:1.35rem;display:flex;flex-direction:column;gap:1rem}.osb-dash-health-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.osb-dash-health-score{font-size:2.8rem;line-height:1;font-weight:800;letter-spacing:-.04em;margin-top:.4rem}.osb-dash-health-ring{--health:0;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#6366f1 calc(var(--health)*1%),rgba(148,163,184,.14) 0);position:relative}.osb-dash-health-ring:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#161b25}.osb-dash-health-ring span{position:relative;z-index:1;font-size:.8rem;font-weight:700;color:#dfe5ef}.osb-dash-health-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.9rem;border-top:1px solid var(--dash-border)}.osb-dash-health-meta span{color:var(--dash-muted);font-size:.8rem}.osb-dash-link{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;font-size:.82rem;font-weight:600}.osb-dash-summary-card{padding:1.35rem;display:flex;flex-direction:column}.osb-dash-summary-head{display:flex;justify-content:space-between;align-items:center;color:var(--dash-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.07em}.osb-dash-summary-head i{font-size:1.3rem;color:#7d8cff}.osb-dash-summary-card>strong{font-size:1.15rem;margin-top:.75rem;overflow-wrap:anywhere}.osb-dash-summary-sub{font-size:.78rem;color:var(--dash-muted);margin-top:.2rem}.osb-dash-summary-row{display:grid;grid-template-columns:130px minmax(0,1fr);gap:1rem;padding-top:.75rem;margin-top:.75rem;border-top:1px solid var(--dash-border);align-items:start}.osb-dash-summary-row span{color:var(--dash-muted);font-size:.78rem}.osb-dash-summary-row b{font-size:.8rem;font-weight:600;text-align:right;overflow-wrap:anywhere}.osb-dash-section-head{display:flex;align-items:end;justify-content:space-between;margin-top:.4rem}.osb-dash-section-head h4{font-size:1rem;margin:.2rem 0 0}.osb-dash-section-head-spaced{margin-top:.8rem}.osb-dash-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.osb-dash-metric{padding:1.1rem;display:flex;gap:.9rem;min-height:126px}.osb-dash-metric-icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border-radius:.75rem;background:rgba(99,102,241,.13);color:#8f9bff;font-size:1.15rem}.osb-dash-metric-body{min-width:0;display:flex;flex-direction:column}.osb-dash-metric-body>span{font-size:.76rem;color:var(--dash-muted);text-transform:uppercase;letter-spacing:.05em}.osb-dash-metric-body strong{font-size:1.65rem;line-height:1.2;margin:.2rem 0}.osb-dash-metric-body small{font-size:.72rem;color:var(--dash-muted)}.osb-dash-metric-body .osb-dash-metric-uptime{font-size:1rem;line-height:1.4;margin-top:.45rem}.osb-dash-progress{height:4px;background:rgba(148,163,184,.14);border-radius:99px;overflow:hidden;margin-top:auto}.osb-dash-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6366f1,#38bdf8)}.osb-dash-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.osb-dash-service{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.95rem 1rem}.osb-dash-service-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:.65rem;background:rgba(148,163,184,.08);font-size:1.05rem;color:#a8b2c3}.osb-dash-service>div:nth-child(2){display:flex;flex-direction:column;min-width:0}.osb-dash-service span{font-size:.72rem;color:var(--dash-muted)}.osb-dash-service strong{font-size:.9rem;margin:.06rem 0}.osb-dash-service small{font-size:.69rem;color:var(--dash-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.osb-dash-status{padding:.28rem .5rem;border-radius:999px;font-size:.66rem!important;font-weight:700}.osb-dash-status.ok{background:rgba(34,197,94,.12);color:#68df96}.osb-dash-status.error{background:rgba(239,68,68,.12);color:#ff8181}.osb-dash-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:.25rem}.osb-dash-info-panel{padding:1.1rem}.osb-dash-panel-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.8rem}.osb-dash-panel-head>i{color:#818cf8;font-size:1.1rem}.osb-dash-panel-head>div{display:flex;flex-direction:column}.osb-dash-panel-head span{font-size:.68rem;color:var(--dash-muted);text-transform:uppercase;letter-spacing:.06em}.osb-dash-panel-head strong{font-size:.9rem}.osb-dash-info-panel dl{margin:0}.osb-dash-info-panel dl>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:1rem;padding:.55rem 0;border-top:1px solid var(--dash-border)}.osb-dash-info-panel dt{font-size:.74rem;color:var(--dash-muted);font-weight:500}.osb-dash-info-panel dd{margin:0;text-align:right;font-size:.76rem;overflow-wrap:anywhere}@media(max-width:1200px){.osb-dash-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.osb-dash-overview-grid,.osb-dash-bottom-grid{grid-template-columns:1fr}.osb-dash-hero{align-items:flex-start;flex-direction:column}.osb-dash-hero-actions{justify-content:flex-start}.osb-dash-services{grid-template-columns:1fr}}@media(max-width:620px){.osb-dashboard-v2{gap:.8rem}.osb-dash-hero{padding:1.15rem}.osb-dash-hero h2{font-size:1.35rem}.osb-dash-overview-grid,.osb-dash-metrics,.osb-dash-services,.osb-dash-bottom-grid{grid-template-columns:1fr}.osb-dash-health-meta{align-items:flex-start;flex-direction:column}.osb-dash-summary-row,.osb-dash-info-panel dl>div{grid-template-columns:1fr;gap:.2rem}.osb-dash-summary-row b,.osb-dash-info-panel dd{text-align:left}.osb-dash-metric{min-height:auto}}

.osb-mcp-card{border:1px solid rgba(99,102,241,.28);background:rgba(20,24,34,.9);border-radius:1rem;padding:1.2rem}.osb-mcp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.osb-mcp-head h4{font-size:1rem;margin:.2rem 0}.osb-mcp-head p{margin:0;color:#8c98aa;font-size:.76rem}.osb-mcp-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:.9rem}.osb-mcp-metrics>div{border:1px solid rgba(148,163,184,.14);border-radius:.8rem;padding:.85rem;background:rgba(25,30,42,.65);display:flex;flex-direction:column}.osb-mcp-metrics span{font-size:.7rem;color:#8c98aa;text-transform:uppercase;letter-spacing:.05em}.osb-mcp-metrics strong{font-size:1.55rem;line-height:1.2;margin:.15rem 0}.osb-mcp-metrics small{font-size:.68rem;color:#8c98aa}.osb-mcp-ok{display:flex;align-items:center;gap:.5rem;color:#68df96;font-size:.78rem;padding:.55rem .7rem;border-radius:.65rem;background:rgba(34,197,94,.08)}@media(max-width:900px){.osb-mcp-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.osb-mcp-head{flex-direction:column}.osb-mcp-metrics{grid-template-columns:1fr}}
