/* Shared Carbon Gray 10 theme. Component-specific layouts remain in their own stylesheets. */
:root{
  --cds-background:#f4f4f4;--cds-layer-01:#fff;--cds-layer-02:#f4f4f4;
  --cds-text-primary:#161616;--cds-text-secondary:#525252;--cds-text-placeholder:#6f6f6f;
  --cds-border-subtle:#e0e0e0;--cds-border-strong:#8d8d8d;
  --cds-interactive:#0f62fe;--cds-button-primary:#0f62fe;--cds-button-primary-hover:#0353e9;
  --cds-focus:#0f62fe;--cds-focus-inset:#fff;--cds-support-error:#da1e28;
  --cds-font-family-sans:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --cds-font-family-mono:"IBM Plex Mono",monospace;
}
body{font-family:var(--cds-font-family-sans);-webkit-font-smoothing:antialiased}
:where(button,input,select,textarea):not(.monaco-editor *){font-family:var(--cds-font-family-sans);border-radius:0}
:where(code,kbd,pre):not(.monaco-editor *){font-family:var(--cds-font-family-mono)}
:where(a,button,input,select,textarea,[tabindex]):not(.monaco-editor *):focus-visible{outline:2px solid var(--cds-focus);outline-offset:-2px}
:where(.global-header,.side-nav) :where(a,button,select):focus-visible{outline-color:#fff}
:where(button,input,select,textarea):disabled{cursor:not-allowed}
.global-header,.workspace-loading-header{background:#161616;color:#f4f4f4}
.global-header .brand{font-weight:400;letter-spacing:.16px}
.side-nav{background:#262626}.side-nav .nav-item{font-size:14px;line-height:20px}
.workspace-picker{padding:16px;border-bottom:1px solid #525252}
.workspace-picker label{color:#c6c6c6;line-height:16px;font-size:12px}
.workspace-picker select{min-height:40px;padding:8px 32px 8px 12px;background:#393939;color:#f4f4f4;border:0;border-bottom:1px solid #8d8d8d;font-size:14px;line-height:20px}
.settings-main h1,.users-heading h1,.database-heading h1{font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}
.settings-main .intro{font-size:14px;line-height:20px}
.settings-card{padding:24px;background:#fff;border:0;border-top:1px solid #e0e0e0}
.settings-card h2{font-size:20px;line-height:28px;font-weight:400}
.settings-card label{font-size:12px;line-height:16px;color:#525252}
.settings-card input{height:48px;background:#f4f4f4;color:#161616;padding:0 16px;border:0;border-bottom:1px solid #8d8d8d}
.settings-card form button,.settings-card>button{min-height:48px;padding:14px 64px 14px 16px;text-align:left;background:#0f62fe;font-size:14px;font-weight:400;line-height:20px}
.settings-card form button:hover,.settings-card>button:hover{background:#0353e9}
.settings-card button:disabled{background:#c6c6c6;color:#8d8d8d;opacity:1}
.settings-card li{padding:16px 0}.settings-card li button{min-height:32px;padding:6px 16px;font-size:14px}
.settings-status.error{color:#da1e28}
:where(dialog,.auth-card,.database-list-panel,.database-workspace,.settings-card){border-radius:0}
dialog::backdrop{background:rgb(22 22 22 / 50%)}
.source-viewer{background:#161616;color:#f4f4f4;color-scheme:dark}
.source-sidebar{background:#262626;border-color:#393939}
.source-sidebar input{background:#393939;border:0;border-bottom:1px solid #8d8d8d;border-radius:0;color:#f4f4f4;min-height:40px}
.source-tree summary,.source-tree button{border-radius:0;color:#c6c6c6}
.source-tree button.selected{background:#393939;border-color:transparent;color:#fff;box-shadow:inset 2px 0 #4589ff}
.source-viewer :where(a,button,input):focus-visible{outline-color:#fff}
@media(max-width:600px){.settings-main h1,.users-heading h1,.database-heading h1{font-size:32px;line-height:40px}}

.side-nav .nav-item{display:flex;align-items:center;gap:16px}
.side-nav .nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 16px;width:16px;height:16px;margin:0;color:inherit;font-size:0}
.side-nav .nav-icon svg{display:block;width:16px;height:16px}

/* Overview follows its content height; the graphic aligns with the heading. */
#overview.hero{min-height:0;padding-bottom:32px}
#overview .hero-grid{align-items:start}
@media(max-width:600px){#overview.hero{padding-top:80px;padding-bottom:24px}}

/* Shared resource refresh control (Applications, Databases and AI inference). */
.refresh-button{font-size:14px;font-weight:400;line-height:1.43}.refresh-button svg{width:16px;height:16px;flex-shrink:0;fill:currentColor;stroke:none;transform-origin:center}
.refresh-button:not(.button){display:inline-flex;align-items:center;justify-content:center}

/* Carbon danger confirmation, shared by resource and access deletion flows. */
dialog.resource-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;background:var(--cds-layer-01);color:var(--cds-text-primary);box-shadow:0 12px 48px #0004;font:14px/1.5 var(--cds-font-family-sans);overflow:auto}
.resource-dialog .resource-dialog-content{padding:24px 24px 40px;overflow-wrap:anywhere}
.resource-dialog h2{margin:0 0 16px;font-size:24px;line-height:32px;font-weight:400}
.resource-dialog p{margin:0;white-space:pre-wrap}
.resource-dialog label{display:block;margin:24px 0 8px;font-size:12px;color:var(--cds-text-secondary)}
.resource-dialog input{box-sizing:border-box;width:100%;height:48px;padding:0 16px;border:0;border-bottom:1px solid var(--cds-border-strong);background:var(--cds-layer-02);color:var(--cds-text-primary);font:inherit}
.resource-dialog .resource-dialog-actions{display:flex;gap:0}
.resource-dialog-actions button{flex:1;min-height:64px;margin:0;padding:16px;border:0;text-align:left;align-self:stretch;font:inherit;cursor:pointer}
.resource-dialog .resource-dialog-cancel{background:#393939;color:#fff}
.resource-dialog .resource-dialog-cancel:hover{background:#4c4c4c}
.button.danger,.resource-dialog .resource-dialog-danger,#confirm-delete,#confirm-revoke{background:#da1e28;color:#fff}
.button.danger:hover,.resource-dialog .resource-dialog-danger:hover,#confirm-delete:hover,#confirm-revoke:hover{background:#b81921}
.button.danger:disabled,.resource-dialog .resource-dialog-danger:disabled,#confirm-delete:disabled,#confirm-revoke:disabled{background:#c6c6c6;color:#8d8d8d;cursor:not-allowed}
.resource-dialog button:focus-visible{outline:2px solid #fff;outline-offset:-4px;box-shadow:inset 0 0 0 2px var(--cds-focus)}

/* Flat controls: suppress native bevels while preserving component focus styles. */
:where(button,input[type="button"],input[type="submit"],input[type="reset"]):not(.monaco-editor *){appearance:none;border:0;box-shadow:none}
:where(dialog input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"])){border:0;border-bottom:1px solid var(--cds-border-strong);background:var(--cds-layer-02)}
dialog{border:0}
dialog:focus-visible{outline:none}
.action-toast{position:fixed;z-index:1000;top:64px;right:24px;display:flex;align-items:flex-start;width:352px;max-width:calc(100vw - 32px);min-height:80px;background:#fff;border-left:3px solid #24a148;box-shadow:0 2px 6px #0000004d;color:#161616;font:400 14px/1.4 "IBM Plex Sans",Arial,sans-serif}.action-toast>svg{width:20px;height:20px;flex-shrink:0;margin:16px;color:#24a148}.action-toast-content{flex:1;min-width:0;padding:16px 0;overflow-wrap:anywhere}.action-toast-content strong{font-weight:600}.action-toast-content p{margin:4px 0 0}.action-toast>button{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;padding:0;border:0;background:transparent;color:#161616;cursor:pointer}.action-toast>button:hover{background:#e8e8e8}.action-toast>button:focus-visible{outline:2px solid #0f62fe;outline-offset:-2px}.action-toast-error{border-left-color:#da1e28}.action-toast-error>svg{color:#da1e28}@media(max-width:600px){.action-toast{right:16px;top:64px}}

/* Carbon web components need the active layer tokens inside their shadow DOM. */
cds-dropdown {
  --cds-field: #f4f4f4;
  --cds-field-hover: #e8e8e8;
  --cds-layer: #fff;
  --cds-layer-hover: #e8e8e8;
  --cds-layer-active: #c6c6c6;
  --cds-layer-selected: #e0e0e0;
  --cds-layer-selected-hover: #d1d1d1;
}

.resource-dialog .resource-dialog-save{background:#0f62fe;color:#fff}.resource-dialog .resource-dialog-save:hover{background:#0353e9}
