/* Follow Observable Framework's active Air / Near Midnight palette. */
:root {
  --dm-bg: var(--theme-background);
  --dm-panel: var(--theme-background);
  --dm-sidebar: var(--theme-background-alt);
  --dm-ink: var(--theme-foreground);
  --dm-muted: var(--theme-foreground-muted);
  --dm-line: var(--theme-foreground-faintest);
  --dm-accent: var(--theme-foreground-focus);
  --dm-accent-ink: var(--theme-background);
  --dm-accent-hover: color-mix(in srgb, var(--dm-accent) 88%, var(--dm-ink));
  --dm-selected: color-mix(in srgb, var(--dm-accent) 12%, var(--dm-panel));
  --dm-error: #b42318;
  --dm-error-bg: color-mix(in srgb, var(--dm-error) 8%, var(--dm-panel));
}
body{margin:0;background:var(--dm-bg)}#observablehq-main,#observablehq-center{max-width:none!important;margin:0!important;padding:0!important}#observablehq-header,#observablehq-footer,#observablehq-sidebar,#observablehq-sidebar-toggle,#observablehq-toc{display:none!important}#observablehq-main>h1{display:none}.dm-app{font:13px/1.5 var(--sans-serif,ui-sans-serif,system-ui,sans-serif);color:var(--dm-ink);min-height:100vh}.dm-app *{box-sizing:border-box}.dm-app button,.dm-button{font:inherit;color:inherit;background:var(--dm-panel);border:1px solid var(--dm-line);border-radius:6px;padding:7px 11px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}.dm-app button:hover,.dm-button:hover{background:var(--dm-selected)}.dm-app button:disabled{opacity:.45;cursor:default}.dm-app button[hidden]{display:none}.dm-app button:focus-visible,.dm-app input:focus-visible,.dm-app select:focus-visible,.dm-app textarea:focus-visible,.dm-app a:focus-visible{outline:2px solid var(--dm-accent);outline-offset:2px}.dm-app .dm-primary{background:var(--dm-accent);border-color:var(--dm-accent);color:var(--dm-accent-ink)}.dm-app .dm-primary:hover{background:var(--dm-accent-hover);border-color:var(--dm-accent-hover)}.dm-app input,.dm-app select{font:inherit;padding:8px 10px;border:1px solid var(--dm-line);border-radius:5px;background:var(--dm-panel);color:inherit;min-width:0}.dm-topbar{height:62px;display:flex;align-items:center;padding:0 22px;gap:14px;border-bottom:1px solid var(--dm-line);background:var(--dm-panel)}.dm-brand{display:flex;align-items:center;gap:9px;font-weight:650;letter-spacing:-.3px;color:inherit;text-decoration:none;font-size:16px}.dm-logo{display:inline-grid;place-items:center;background:var(--dm-accent);color:var(--dm-accent-ink);width:30px;height:30px;border-radius:8px;font:600 20px Georgia,serif}.dm-divider{height:22px;border-left:1px solid var(--dm-line);margin:0 8px}.dm-workspace-name{font-weight:550}.dm-tag{font-size:11px;border:1px solid var(--dm-line);border-radius:4px;padding:2px 7px;color:var(--dm-muted);white-space:nowrap}.dm-topbar-end{margin-left:auto;display:flex;align-items:center;gap:15px}.dm-topbar-end small{font-size:11px;color:var(--dm-muted)}.dm-app .dm-owner{border:0;padding:0;gap:9px;background:transparent}.dm-avatar{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--dm-selected);color:var(--dm-ink);font-weight:650}.dm-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--theme-green);margin-right:5px}.dm-layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 62px)}.dm-sidebar{background:var(--dm-sidebar);padding:25px 13px 14px;display:flex;flex-direction:column;border-right:1px solid var(--dm-line);gap:4px}.dm-label{font-size:10px;font-weight:650;letter-spacing:1.1px;color:var(--dm-muted);margin:0 10px 10px}.dm-app .dm-nav{border:0;border-radius:5px;padding:9px 10px;justify-content:flex-start;background:transparent;gap:11px;font-size:18px}.dm-nav span{font-size:13px;font-weight:500}.dm-nav small{margin-left:auto;font-size:10px;border:1px solid var(--dm-line);padding:0 5px;border-radius:4px}.dm-app .dm-nav.active,.dm-app .dm-project.active{background:var(--dm-selected);color:var(--dm-accent)}.dm-project-label{margin-top:31px;display:flex;align-items:center;justify-content:space-between}.dm-app .dm-project-label button{padding:0 4px;border:0;background:transparent;font-size:20px}.dm-projects{display:grid;gap:5px}.dm-app .dm-project{justify-content:flex-start;gap:10px;background:transparent;border:0;text-align:left;padding:11px 10px}.dm-project small,.dm-sidebar-bottom small{display:block;font-size:10px;color:var(--dm-muted);margin-top:2px}.dm-project>span{font-size:20px;color:var(--dm-accent)}.dm-app .dm-new-project{background:transparent;border:1px dashed var(--dm-line);margin:13px 7px;padding:8px;font-size:12px}.dm-sidebar-bottom{margin-top:auto;border-top:1px solid var(--dm-line);padding:15px 4px 0;display:flex;gap:10px;align-items:center;font-size:12px}.dm-main{display:flex;flex-direction:column;min-width:0}.dm-projectbar{display:flex;justify-content:space-between;align-items:center;padding:23px 26px 20px;gap:12px}.dm-eyebrow{font-size:9px;letter-spacing:1.3px;color:var(--dm-muted);font-weight:600}.dm-projectbar h1{font:550 24px/1.3 ui-sans-serif,system-ui;margin:4px 0 0;letter-spacing:-.6px}.dm-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.dm-actions button,.dm-actions a{font-size:12px}.dm-workbench{display:grid;grid-template-columns:230px minmax(240px,1.1fr) minmax(250px,1fr);flex:1;min-height:540px;border-block:1px solid var(--dm-line);background:var(--dm-panel)}.dm-explorer{border-right:1px solid var(--dm-line);min-width:0}.dm-pane-heading{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;font-size:10px;letter-spacing:.7px;font-weight:600;border-bottom:1px solid var(--dm-line)}.dm-pane-heading span{color:var(--dm-muted);font-size:10px;font-weight:400;letter-spacing:0}.dm-app .dm-search{display:block;width:calc(100% - 20px);margin:10px;padding:6px 8px;font-size:11px}.dm-file-list{max-height:calc(100vh - 295px);overflow:auto;padding-bottom:12px}.dm-app .dm-file{display:block;width:100%;border:0;border-radius:0;padding:7px 11px;font-size:11px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-file>span{font:10px ui-monospace,monospace;color:var(--dm-accent);display:inline-block;width:25px}.dm-app .dm-file.active{background:var(--dm-selected);color:var(--dm-accent);box-shadow:inset 2px 0 var(--dm-accent)}.dm-editor{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--dm-line)}.dm-tabs{height:40px;display:flex;overflow:auto;background:var(--dm-bg);border-bottom:1px solid var(--dm-line);flex-shrink:0}.dm-app .dm-tabs button{border:0;border-right:1px solid var(--dm-line);border-radius:0;background:transparent;font-size:11px;white-space:nowrap;padding:0 14px}.dm-app .dm-tabs button.active{background:var(--dm-panel);box-shadow:inset 0 2px var(--dm-accent)}.dm-editor-heading{height:36px;display:flex;justify-content:space-between;padding:10px 13px;font-size:10px;color:var(--dm-muted);gap:8px}.dm-editor-heading>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-save-state{white-space:nowrap}.dm-source{flex:1;resize:none;border:0;padding:17px 20px;font:12px/1.85 var(--monospace,ui-monospace,SFMono-Regular,Consolas,monospace);tab-size:2;color:var(--dm-ink);background:var(--dm-panel);width:100%;min-height:440px;outline-offset:-3px!important}.dm-preview{display:flex;flex-direction:column;min-width:0;background:var(--dm-panel)}.dm-preview iframe{border:0;width:100%;flex:1;min-height:440px;background:var(--dm-panel)}.dm-preview>p{font-size:10px;line-height:1.5;padding:12px 14px;margin:0;color:var(--dm-muted);border-top:1px solid var(--dm-line);background:var(--dm-bg)}.dm-notice{padding:8px 25px;min-height:32px;font-size:12px;color:var(--dm-accent)}.dm-notice.error{color:var(--dm-error);background:var(--dm-error-bg)}.dm-statusbar{margin-top:auto;padding:9px 22px;display:flex;gap:25px;font-size:10px;color:var(--dm-muted);border-top:1px solid var(--dm-line);background:var(--dm-panel)}.dm-statusbar>span:last-child{margin-left:auto}.dm-content{padding:0 26px 28px;max-width:1200px;width:100%;margin:0 auto}.dm-intro{color:var(--dm-muted);font-size:14px;margin:0 0 24px}.dm-account-card{border:1px solid var(--dm-line);background:var(--dm-panel);border-radius:8px;margin-bottom:20px;overflow:hidden}.dm-account-card>header{display:flex;align-items:center;gap:16px;padding:20px;border-bottom:1px solid var(--dm-line)}.dm-account-card h2{font-size:16px;margin:0}.dm-account-card header small{font-size:11px;color:var(--dm-muted);margin:3px 0 0}.dm-account-card header .dm-tag{margin-left:auto}.dm-aws{font:600 17px Georgia,serif;color:var(--dm-muted);background:var(--dm-sidebar);width:42px;height:42px;border-radius:7px;display:grid;place-items:center}.dm-connection{display:flex;gap:13px;align-items:center;padding:17px 20px}.dm-connection+.dm-connection{border-top:1px solid var(--dm-line)}.dm-connection>div{flex:1}.dm-connection strong{font-weight:550}.dm-connection small{display:block;color:var(--dm-muted);font:11px ui-monospace,monospace;margin-top:5px}.dm-connection button{font-size:11px}.dm-note{font-size:11px;color:var(--dm-muted);line-height:1.7}.dm-media-toolbar{display:flex;align-items:flex-end;gap:14px;margin-bottom:20px}.dm-media-toolbar label{font-size:11px;display:grid;gap:5px}.dm-media-toolbar .dm-button{margin-left:auto;display:inline-flex}.dm-media-toolbar select{min-width:320px}.dm-breadcrumb{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--dm-muted);padding:12px 0;flex-wrap:wrap}.dm-app .dm-breadcrumb button{border:0;padding:0 4px;background:transparent;font-size:11px}.dm-media-layout{border:1px solid var(--dm-line);border-radius:6px;background:var(--dm-panel);display:grid;grid-template-columns:minmax(300px,1fr) minmax(250px,.8fr);min-height:420px;overflow:hidden}.dm-objects{max-height:600px;overflow:auto}.dm-app .dm-object{display:flex;width:100%;padding:13px 15px;border:0;border-bottom:1px solid var(--dm-line);border-radius:0;justify-content:flex-start;gap:12px}.dm-object>span{font-size:20px;color:var(--dm-accent);width:22px}.dm-object strong{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-object small{margin-left:auto;white-space:nowrap;font-size:10px;color:var(--dm-muted)}.dm-image{padding:24px;border-left:1px solid var(--dm-line);display:flex;flex-direction:column;gap:13px;min-width:0}.dm-image img{max-width:100%;max-height:350px;object-fit:contain;border-radius:4px}.dm-image small{color:var(--dm-muted)}.dm-image label{display:grid;gap:7px;font-size:11px}.dm-image input{width:100%;font-size:10px}.dm-empty{padding:50px 24px;text-align:center;color:var(--dm-muted);font-size:13px}.dm-empty>span{font-size:40px;opacity:.5}.dm-loading{max-width:600px;margin:15vh auto;padding:30px}.dm-dialog{width:430px;border:1px solid var(--dm-line);border-radius:10px;padding:28px;color:var(--dm-ink);background:var(--dm-panel)}.dm-dialog::backdrop{background:rgb(0 0 0 / 35%);backdrop-filter:blur(2px)}.dm-dialog h2{font-size:20px;margin:0 0 20px}.dm-fields{display:grid;gap:16px}.dm-fields label{display:grid;gap:7px;font-size:12px}.dm-dialog .dm-actions{justify-content:flex-end;margin-top:25px}.dm-dialog-error{color:var(--dm-error);font-size:12px}.dm-build{border-top:1px solid var(--dm-line);background:var(--dm-sidebar);color:var(--dm-ink);padding:13px 22px}.dm-build>div{display:flex;gap:20px;font-size:11px}.dm-build a{margin-left:auto;color:var(--dm-accent)}.dm-build-log{font:11px/1.6 ui-monospace,monospace;max-height:130px;overflow:auto;white-space:pre-wrap;background:transparent;margin-bottom:0}
@media(max-width:1150px){.dm-layout{grid-template-columns:185px minmax(0,1fr)}.dm-workbench{grid-template-columns:180px minmax(200px,1fr)}.dm-preview{grid-column:1/-1;border-top:1px solid var(--dm-line);max-height:450px}.dm-preview iframe{min-height:280px}.dm-projectbar{padding:18px;align-items:flex-start}.dm-statusbar{gap:12px;flex-wrap:wrap}.dm-statusbar>span:last-child{margin-left:0}}@media(max-width:760px){.dm-topbar{padding:0 12px;gap:8px}.dm-workspace-name,.dm-personal,.dm-divider,.dm-topbar-end>small{display:none}.dm-layout{grid-template-columns:1fr}.dm-sidebar{flex-direction:row;flex-wrap:wrap;padding:10px;gap:7px;border-right:0;border-bottom:1px solid var(--dm-line)}.dm-label,.dm-sidebar-bottom,.dm-new-project{display:none!important}.dm-projects{display:flex;overflow:auto;width:100%}.dm-projects small{display:none}.dm-app .dm-project{padding:6px 10px}.dm-projectbar{flex-direction:column}.dm-workbench{grid-template-columns:145px minmax(175px,1fr)}.dm-source{padding:12px;font-size:11px}.dm-content{padding:0 15px 20px}.dm-connection{flex-wrap:wrap}.dm-connection>div{flex-basis:100%}.dm-media-layout{grid-template-columns:1fr}.dm-image{border-left:0;border-top:1px solid var(--dm-line)}.dm-media-toolbar{flex-wrap:wrap;align-items:center}.dm-media-toolbar select{min-width:0;max-width:100%}.dm-media-toolbar label{max-width:100%}.dm-dialog{width:calc(100% - 25px)}.dm-statusbar{font-size:9px}}
@media(prefers-color-scheme:dark){:root{--dm-error:#ffb4a2}}

/* One explorer spans account roots; file buffers keep their own workspace address. */
.wb-app{height:100vh;min-height:620px;display:flex;flex-direction:column;overflow:hidden}.wb-title{color:var(--dm-muted);font-size:12px}.wb-layout{display:grid;grid-template-columns:290px minmax(0,1fr);flex:1;min-height:0}.wb-sidebar{background:var(--dm-sidebar);border-right:1px solid var(--dm-line);min-width:0;display:flex;flex-direction:column;min-height:0}.wb-explorer-heading,.wb-section-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px;padding:10px 14px;flex-shrink:0}.wb-explorer-heading button,.wb-section-heading button{padding:0 5px;border:0;background:transparent;font-size:19px}.wb-filter{display:grid;gap:5px;padding:0 13px 12px;font-size:10px;color:var(--dm-muted)}.wb-filter select{font-size:12px;width:100%}.wb-tree{flex:1;overflow:auto;padding-bottom:20px}.wb-section-heading{padding-block:13px 6px;font-weight:650;color:var(--dm-muted)}.wb-account-heading{display:flex;gap:8px;align-items:center;padding:12px 14px 5px;font-size:12px;font-weight:650}.wb-account-heading small{margin-left:auto;font:9px ui-monospace,monospace;color:var(--dm-muted);font-weight:400}.wb-app .wb-root-heading,.wb-app .wb-tree-row{display:flex;justify-content:flex-start;border:0;border-radius:0;background:transparent;width:100%;text-align:left;white-space:nowrap;overflow:hidden;font-size:12px}.wb-app .wb-root-heading{padding:9px 14px;gap:8px}.wb-root-heading>span:last-child{overflow:hidden;text-overflow:ellipsis}.wb-root-heading small{display:block;font-size:9px;color:var(--dm-muted);font-weight:400;overflow:hidden;text-overflow:ellipsis}.wb-app .wb-tree-row{padding:5px 10px 5px calc(28px + var(--depth,0) * 15px);min-height:28px;gap:8px;text-overflow:ellipsis}.wb-tree-row>span:first-child{font-size:10px;min-width:12px;color:var(--dm-accent)}.wb-app .wb-tree-row.active{background:var(--dm-selected);box-shadow:inset 2px 0 var(--dm-accent)}.wb-app .wb-tree-row:hover,.wb-app .wb-root-heading:hover{background:var(--dm-selected)}.wb-tree-empty,.wb-tree-help{font-size:11px;color:var(--dm-muted);padding:4px 18px;margin:8px 0;line-height:1.6}.wb-tree-help{margin-top:20px}.wb-sidebar-actions{border-top:1px solid var(--dm-line);display:flex;gap:7px;flex-wrap:wrap;padding:12px}.wb-sidebar-actions button{font-size:11px;padding:6px 8px}.wb-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.wb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--dm-line);background:var(--dm-panel)}.wb-view-tabs{display:flex;gap:3px}.wb-view-tabs button{border:0;background:transparent;font-size:12px;padding:6px 8px}.wb-view-tabs button.active{background:var(--dm-selected);color:var(--dm-accent)}.wb-tabs{display:flex;overflow-x:auto;min-height:37px;border-bottom:1px solid var(--dm-line);flex-shrink:0}.wb-tab{display:flex;border-right:1px solid var(--dm-line)}.wb-tab button{font-size:11px;white-space:nowrap;background:transparent;border:0;border-radius:0;padding:9px 10px}.wb-tab button:last-child{padding-inline:5px}.wb-tab.active{background:var(--dm-panel);box-shadow:inset 0 2px var(--dm-accent)}.wb-file-heading{display:flex;gap:12px;align-items:center;padding:9px 16px;color:var(--dm-muted);font-size:10px;min-height:36px;flex-shrink:0}.wb-file-heading>span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;font-family:ui-monospace,monospace}.wb-context-tag{border:1px solid var(--dm-line);border-radius:4px;padding:1px 6px;white-space:nowrap}.wb-editor-panes{display:grid;grid-template-columns:minmax(230px,1fr) minmax(220px,1fr);flex:1;min-height:160px;border-block:1px solid var(--dm-line)}.wb-source-pane{display:flex;min-width:0;min-height:0;border-right:1px solid var(--dm-line)}.wb-app .wb-source{min-height:0;display:block;height:100%;font-size:12px}.wb-preview{min-width:0;display:flex;flex-direction:column;overflow:auto;background:var(--dm-panel)}.wb-preview iframe{border:0;width:100%;flex:1;min-height:120px;background:var(--dm-panel)}.wb-preview>p{font-size:10px;line-height:1.5;padding:8px 13px;margin:0;color:var(--dm-muted);border-top:1px solid var(--dm-line)}.wb-file-viewer{flex:1;overflow:auto;min-height:0;padding:20px;background:var(--dm-panel)}.wb-file-viewer img,.wb-file-viewer video{max-width:100%;max-height:65vh;object-fit:contain}.wb-file-viewer iframe{width:100%;height:100%;min-height:300px;border:0}.wb-file-viewer pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.wb-file-viewer table{font-size:12px;border-collapse:collapse;min-width:100%}.wb-file-viewer td,.wb-file-viewer th{border:1px solid var(--dm-line);padding:7px;text-align:left}.wb-file-viewer a{color:var(--dm-accent)}.wb-binary{flex:1;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;gap:10px;background:var(--dm-panel)}.wb-binary img{max-height:50vh;max-width:100%;object-fit:contain}.wb-binary h2,.wb-binary p{margin:0}.wb-file-icon{font-size:60px;color:var(--dm-muted)}.wb-empty{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;overflow:auto}.wb-empty h1{font-size:25px;letter-spacing:-.5px}.wb-empty p{max-width:460px;color:var(--dm-muted)}.wb-settings{padding:25px;overflow:auto;flex:1;max-width:none}.wb-settings>h1{font-size:25px;letter-spacing:-.5px;margin:5px 0 8px}.wb-settings>p{max-width:750px;color:var(--dm-muted)}.wb-settings h2{font-size:17px}.wb-context-block{margin-block:28px}.wb-team-actions{padding-top:16px;border-top:1px solid var(--dm-line)}.wb-app fieldset{border:1px solid var(--dm-line);border-radius:7px;padding:18px;margin:20px 0}.wb-app legend{font-size:12px;font-weight:650;padding:0 6px}.wb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.wb-form-grid label{display:grid;gap:6px;font-size:12px;min-width:0}.wb-wide{grid-column:1/-1}.wb-deployment{border-bottom:1px solid var(--dm-line);padding:5px 0 20px;margin-bottom:20px}.wb-deployment .dm-actions{margin-top:13px}.wb-dialog{max-height:85vh;overflow:auto;width:500px}.wb-dialog textarea,.wb-settings textarea{font:12px/1.6 ui-monospace,monospace;color:var(--dm-ink);background:var(--dm-panel);border:1px solid var(--dm-line);border-radius:5px;padding:8px;min-height:110px;width:100%;resize:vertical}.wb-notice:empty{min-height:8px;padding-block:4px}.wb-main .dm-statusbar{flex-shrink:0;font-size:9px;padding:8px 15px}.wb-record-layout{display:grid;grid-template-columns:minmax(280px,1.2fr) minmax(260px,1fr);gap:25px}.wb-history-item{border:1px solid var(--dm-line);border-radius:5px;padding:12px;margin:10px 0;font-size:12px}.wb-history-item small{display:block;color:var(--dm-muted);margin:4px 0}.wb-history-item code{overflow-wrap:anywhere;font-size:10px}.wb-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.wb-file-tools{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--dm-line);font-size:11px}.wb-file-tools input{padding:5px 8px;flex:1;max-width:420px;font-size:11px}.wb-file-tools button{padding:5px 8px;font-size:11px}
@media(max-width:1150px){.wb-layout{grid-template-columns:245px minmax(0,1fr)}.wb-toolbar{padding:8px 10px}.wb-title{display:none}.wb-toolbar .dm-actions{gap:4px}.wb-toolbar .dm-actions button{font-size:11px;padding:6px}.wb-record-layout{grid-template-columns:1fr}.wb-context-tag{display:none}}
@media(max-width:800px){.wb-layout{grid-template-columns:190px minmax(0,1fr)}.wb-editor-panes{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.wb-source-pane{border-right:0;border-bottom:1px solid var(--dm-line)}.wb-account-heading{display:block}.wb-account-heading small{display:block;margin-top:2px}.wb-sidebar-actions{padding:8px}.wb-topbar .dm-topbar-end{font-size:11px}.wb-form-grid{grid-template-columns:1fr}.wb-wide{grid-column:auto}.wb-settings{padding:17px}.wb-main .dm-statusbar>span:last-child{display:none}.wb-file-heading{padding-inline:10px}.wb-view-tabs{flex-wrap:wrap}.wb-app .dm-brand{font-size:13px}.wb-app .dm-topbar-end>small{display:none}.wb-sidebar-actions button{font-size:10px}.wb-app{min-height:550px}}
@media(max-width:520px){.wb-layout{grid-template-columns:150px minmax(0,1fr)}.wb-app .dm-topbar-end{display:none}.wb-root-heading small{display:none}.wb-app .wb-root-heading{padding-inline:8px}.wb-app .wb-tree-row{padding-left:calc(14px + var(--depth,0) * 10px);font-size:11px}.wb-explorer-heading,.wb-section-heading{padding-inline:8px}.wb-toolbar .dm-actions{flex-wrap:wrap}.wb-toolbar .dm-actions button{font-size:10px}.wb-toolbar{gap:4px}.wb-source-pane .wb-source{font-size:11px;padding:10px}.wb-filter{padding-inline:7px}.wb-filter select{font-size:10px}.wb-file-heading .dm-save-state{display:none}.wb-main .dm-statusbar{gap:5px}.wb-file-tools{flex-wrap:wrap}.wb-editor-panes{grid-template-columns:minmax(0,1fr)}}
.wb-metadata-reason{display:grid;gap:6px;margin-top:16px;font-size:12px}.wb-history-item pre,.wb-record-layout>section>details pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;font-size:11px}.wb-history-item details{margin-top:8px}.wb-app .dm-brand:visited{color:inherit}
.wb-kind-badge{margin-left:auto;color:var(--dm-muted);font-size:9px;letter-spacing:.2px;padding-left:5px}.wb-app .wb-folder.selected{background:var(--dm-selected)}.wb-main .dm-statusbar>span:nth-child(2){overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:60%}
.wb-app .wb-discover{border:0;background:transparent;border-radius:0;justify-content:flex-start;width:100%;padding:7px 15px;font-size:11px;color:var(--dm-accent)}.wb-bucket-list{max-height:40vh;overflow:auto;border-block:1px solid var(--dm-line);background:var(--dm-bg)}.wb-bucket-list>button{display:flex;width:100%;text-align:left;justify-content:flex-start;border:0;border-radius:0;background:transparent;padding:7px 20px;font-size:11px;overflow:hidden}.wb-bucket-list>button>span:last-child{overflow:hidden;text-overflow:ellipsis}.wb-bucket-list small{display:block;font-size:9px;color:var(--dm-muted)}
.wb-profile-tag{font-size:9px;font-weight:400;font-style:normal;margin-left:7px;padding:1px 5px;border:1px solid var(--dm-line);border-radius:3px;color:var(--dm-muted)}
/* Compact editor actions; setup and detailed connection facts stay optional. */
.wb-menu{position:relative;flex-shrink:0;font-size:12px}.wb-menu>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;border:1px solid var(--dm-line);border-radius:5px;padding:7px 10px;background:var(--dm-panel);white-space:nowrap}.wb-menu>summary::-webkit-details-marker{display:none}.wb-menu>summary:focus-visible{outline:2px solid var(--dm-accent);outline-offset:2px}.wb-menu[open]>summary{background:var(--dm-selected)}.wb-menu-panel{position:absolute;z-index:30;right:0;top:calc(100% + 5px);min-width:190px;max-width:min(320px,70vw);padding:5px;background:var(--dm-panel);border:1px solid var(--dm-line);border-radius:7px;box-shadow:0 8px 25px rgb(0 0 0 / 15%)}.wb-app .wb-menu-panel>button{display:flex;justify-content:flex-start;width:100%;border:0;text-align:left;background:transparent;padding:9px 10px;font-size:12px;white-space:nowrap}.wb-menu-panel>button:hover{background:var(--dm-selected)}.wb-menu-up .wb-menu-panel{top:auto;bottom:calc(100% + 5px)}.wb-file-tools .wb-menu{margin-left:auto}.wb-file-tools .wb-menu>summary{padding:5px 8px}.wb-version-note{display:grid;gap:5px;padding:10px;border-top:1px solid var(--dm-line);color:var(--dm-muted);font-size:11px}.wb-version-note input{width:100%;min-width:210px}.wb-app .wb-entry-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.wb-kind-badge{flex-shrink:0;max-width:90px;overflow:hidden;text-overflow:ellipsis;padding-left:0}.wb-root-name{overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:100%;vertical-align:middle}.wb-profile-tag{display:block;margin:3px 0 0;width:fit-content;max-width:100%;overflow:hidden;text-overflow:ellipsis}.wb-account-heading{overflow:hidden}.wb-account-heading small{flex-shrink:0}.wb-app .dm-account-card>header>button{margin-left:auto;font-size:11px}.wb-identity,.wb-secrets,.wb-advanced,.wb-team-actions{margin-top:20px}.wb-identity>summary,.wb-secrets>summary,.wb-advanced>summary,.wb-team-actions>summary,.wb-folder-build>summary{cursor:pointer;color:var(--dm-muted);font-size:12px;padding-block:8px}.wb-identity dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px 18px;font-size:12px}.wb-identity dt{color:var(--dm-muted)}.wb-identity dd{margin:0;overflow-wrap:anywhere;font-family:ui-monospace,monospace}.wb-app .wb-checkbox{display:flex;align-items:center;gap:8px}.wb-checkbox input{width:auto}.wb-provider-form{max-width:680px}.wb-provider-form fieldset:disabled{opacity:.7}.wb-provider-form textarea{font-family:inherit}.wb-advanced>label{display:grid;gap:6px;margin-top:8px;font-size:12px}.wb-connection-secrets pre{max-height:240px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.wb-connection-secrets button{font-size:12px}.wb-folder-build>.wb-form-grid{padding-top:12px}.wb-toolbar,.wb-file-tools{flex-shrink:0}.wb-sidebar-actions{justify-content:space-between}.wb-settings>.wb-menu{width:fit-content}.wb-settings>.wb-menu>.wb-menu-panel{left:0;right:auto}
@media(max-width:800px){.wb-kind-badge{max-width:58px;font-size:8px}.wb-identity dl{grid-template-columns:1fr;gap:4px}.wb-identity dd{margin-bottom:8px}.wb-menu>summary{font-size:11px;padding:6px 8px}}
@media(max-width:520px){.wb-toolbar{padding:8px;gap:7px}.wb-toolbar .dm-actions{gap:5px}.wb-menu>summary{font-size:10px}.wb-sidebar-actions{display:grid;gap:6px}.wb-menu-up .wb-menu-panel{left:0;right:auto}.wb-file-tools>span{font-size:10px}.wb-file-tools .wb-menu{margin-left:0}.wb-app .wb-file-tools>button{font-size:10px}.wb-kind-badge{max-width:48px;font-size:8px}.wb-version-note input{min-width:170px}.wb-menu-panel{min-width:165px}.wb-connection-secrets button{max-width:100%;white-space:normal}}
.wb-main{overflow:visible}

.wb-preview-notes{font-size:11px;line-height:1.5;padding:8px 13px;border-top:1px solid var(--dm-line);color:var(--dm-muted)}.wb-preview-notes summary{cursor:pointer}.wb-preview-notes ul{padding-left:18px;margin-bottom:0}

/* Monaco owns its inner controls and syntax colors; the shell follows Framework. */
.wb-code-editor-slot,.wb-code-editor{flex:1;min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;background:var(--dm-panel)}
.wb-code-editor .monaco-editor{padding:0;text-align:left}
.wb-code-editor .monaco-editor textarea.inputarea{border:0;border-radius:0;padding:0;min-height:0}
.wb-code-editor .monaco-editor .inputarea.ime-input{background:var(--dm-panel)}
.wb-editor-error{font:12px/1.5 var(--sans-serif);color:var(--dm-error);padding:16px}
.wb-editor-position{white-space:nowrap}
.wb-live-status{white-space:nowrap;flex-shrink:0;font-size:10px;color:var(--dm-accent)}
@media(max-width:520px){.wb-live-status{max-width:58px;overflow:hidden;text-overflow:ellipsis}.wb-file-heading.wb-file-tools{gap:5px}}

/* Keep the working surface close to the top: tabs/actions, then path/file actions. */
#observablehq-main>.observablehq--block:has(.wb-app){margin:0}
.wb-app>.dm-topbar{height:40px;min-height:40px;padding:0 12px;gap:12px}
.wb-app .dm-brand{font-size:14px;gap:8px}
.wb-app a.dm-brand[href]{color:var(--dm-ink);text-decoration:none}
.wb-app>.dm-topbar .dm-logo{width:24px;height:24px;font-size:24px;border-radius:5px}
.wb-app>.dm-topbar .dm-topbar-end{font-size:12px;gap:14px}
.wb-app>.dm-topbar button{font-size:11px;padding:4px 7px}
.wb-app .wb-sidebar-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:4px;border:0;background:transparent;color:var(--dm-muted)}
.wb-app .wb-sidebar-toggle:hover{background:var(--dm-selected);color:var(--dm-ink)}
.wb-layout{position:relative;grid-template-columns:var(--wb-sidebar-width,290px) minmax(0,1fr)}
.wb-main{grid-column:2}
.wb-sidebar[hidden],.wb-sidebar-resizer[hidden]{display:none}
.wb-sidebar-resizer{position:absolute;z-index:35;top:0;bottom:0;left:calc(var(--wb-sidebar-width,290px) - 3px);width:6px;cursor:col-resize;touch-action:none;outline:none}
.wb-sidebar-resizer::after{content:"";position:absolute;inset:0 2px}
.wb-sidebar-resizer:hover::after,.wb-sidebar-resizer:focus-visible::after,.wb-resizing .wb-sidebar-resizer::after{background:var(--dm-accent)}
.wb-resizing,.wb-resizing *{cursor:col-resize!important;user-select:none!important}
.wb-resizing iframe{pointer-events:none}
.wb-toolbar{min-height:38px;padding:0 8px 0 0;gap:8px;flex-wrap:nowrap}
.wb-view-tabs{flex:1;min-width:0;align-items:center;flex-wrap:nowrap}
.wb-view-tabs .wb-tabs{flex:1;min-width:0;border:0;min-height:38px}
.wb-tab{flex-shrink:0;max-width:240px}
.wb-tab button[data-tab]{overflow:hidden;text-overflow:ellipsis;padding:8px 10px}
.wb-tab button[data-close-tab]{flex-shrink:0;padding-inline:6px}
.wb-view-tabs .wb-back-to-editor{flex-shrink:0;white-space:nowrap;font-size:11px}
.wb-toolbar .dm-actions{flex-shrink:0;gap:5px;flex-wrap:nowrap}
.wb-toolbar .dm-actions>button,.wb-toolbar .wb-menu>summary{font-size:11px;padding:5px 8px}
.wb-file-heading.wb-file-tools{min-height:30px;padding:2px 8px 2px 12px;gap:12px;flex-wrap:nowrap;border-bottom:0}
.wb-file-heading>.dm-save-state{flex-shrink:0;font-size:10px}
.wb-file-heading.wb-file-tools>.wb-menu{margin-left:0}
.wb-file-heading.wb-file-tools>.wb-menu>summary{font-size:10px;padding:3px 7px;border-color:transparent;background:transparent}
.wb-preview>.dm-pane-heading{height:28px;min-height:28px;flex-shrink:0;padding:5px 12px;font-size:10px;letter-spacing:.5px}
.wb-preview-actions{display:flex;gap:2px;flex-shrink:0}
.wb-file-tools .wb-preview-actions>button{font-size:10px;padding:3px 6px;border-color:transparent;background:transparent}
.wb-file-tools .wb-preview-actions>[aria-expanded="true"]{color:var(--dm-accent);background:var(--dm-selected)}
.wb-preview[hidden]{display:none}
.wb-preview-hidden .wb-editor-panes{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.wb-preview-hidden .wb-source-pane{border:0}
.wb-editor-panes{position:relative;grid-template-columns:minmax(0,var(--wb-editor-share,50%)) minmax(0,1fr)}
.wb-preview-resizer{position:absolute;z-index:25;top:0;bottom:0;left:calc(var(--wb-editor-share,50%) - 3px);width:6px;cursor:col-resize;touch-action:none;outline:none}
.wb-preview-resizer[hidden]{display:none}
.wb-preview-resizer::after{content:"";position:absolute;inset:0 2px}
.wb-preview-resizer:hover::after,.wb-preview-resizer:focus-visible::after,.wb-preview-resizing .wb-preview-resizer::after{background:var(--dm-accent)}
.wb-preview-resizing,.wb-preview-resizing *{cursor:var(--wb-preview-resize-cursor)!important;user-select:none!important}
.wb-preview-resizing iframe{pointer-events:none}
@media(max-width:800px){
  .wb-editor-panes{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,var(--wb-editor-share,50%)) minmax(0,1fr)}
  .wb-preview-resizer{left:0;right:0;top:calc(var(--wb-editor-share,50%) - 3px);bottom:auto;width:auto;height:6px;cursor:row-resize}
  .wb-preview-resizer::after{inset:2px 0}
  .wb-toolbar{flex-wrap:wrap;gap:0;padding:0}
  .wb-view-tabs{flex-basis:100%}
  .wb-toolbar>.dm-actions{margin-left:auto;padding:3px 7px}
  .wb-app>.dm-topbar{padding-inline:8px;gap:8px}
}
/* Review stays out of the editor chrome until explicitly opened. */
.wb-app .wb-review-dialog{width:min(1200px,95vw);max-width:95vw;height:90vh;max-height:94vh;padding:16px;background:var(--dm-panel);color:var(--dm-ink);border:1px solid var(--dm-line);overflow:auto}
.wb-review-dialog header{display:flex;justify-content:space-between;align-items:start;gap:12px}
.wb-review-dialog h2{margin:0;font-size:16px}
.wb-location-dialog dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 18px;font-size:12px}
.wb-location-dialog dt{color:var(--dm-muted)}
.wb-location-dialog dd{margin:0;overflow-wrap:anywhere}
.wb-location-dialog summary{cursor:pointer;color:var(--dm-muted)}
.wb-review-location{margin:5px 0 12px;font-size:11px;color:var(--dm-muted);overflow-wrap:anywhere}
.wb-review-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.wb-review-tools label{display:flex;gap:6px;align-items:center;font-size:11px}
.wb-review-tools select{max-width:300px}
.wb-review-notice{font-size:12px;min-height:18px;margin:8px 0}
.wb-review-labels{display:grid;grid-template-columns:1fr 1fr;font-size:11px;color:var(--dm-muted);border-top:1px solid var(--dm-line);padding:8px 0}
.wb-review-diff{height:48vh;min-height:260px;border:1px solid var(--dm-line)}
.wb-review-discussion{margin-top:12px;font-size:12px}
.wb-review-discussion ol{list-style:none;padding:0;max-height:180px;overflow:auto}
.wb-review-discussion li{border-bottom:1px solid var(--dm-line);padding:6px 0}
.wb-review-discussion li p{margin:3px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.wb-review-discussion form{display:grid;gap:8px}
.wb-review-discussion form label{display:grid;gap:4px}
.wb-review-discussion textarea{width:100%;box-sizing:border-box}
.wb-review-discussion form>div{display:flex;gap:8px;align-items:end;justify-content:space-between}
@media(max-width:760px){.wb-review-tools{gap:5px}.wb-review-tools select{max-width:190px}.wb-review-labels{display:flex;gap:12px}.wb-review-diff{height:42vh}}

.wb-transfer-dialog {max-width: 32rem;}
.wb-transfer-dialog progress {width: 100%; accent-color: var(--theme-foreground-focus);}
.wb-transfer-dialog .wb-transfer-name {overflow-wrap: anywhere;}
