/* Markdown Studio chrome; document typography remains owned by document styles. */
:root[data-studio-skin] { --radius:10px; --studio-shadow:0 12px 38px #00000012; --studio-rail:#171b25; --studio-rail-ink:#a1aabd; --studio-accent:#aab4ff; --studio-tint:#333b59; --studio-paper:#fffefb; --studio-canvas:#14171f; }
:root[data-studio-skin="slate"] { --bg-app:#171b24; --bg-toolbar:#1d2230; --bg-panel:#202636; --bg-panel-header:#242b3c; --bg-elevated:#2b3346; --bg-input:#1c2230; --bg-segment:#171c28; --border:#30394c; --border-strong:#4b5870; --text:#e4e8f1; --text-dim:#acb6c9; --text-mute:#94a0b7; --blue:#aab8ff; --blue-soft:#aab8ff16; --primary-bg:#5967ad; --pill-active-bg:#3c4864; --pill-active-text:#f2f4ff; --success:#91c6a3; --scrollbar:#465169; --scrollbar-hover:#66738f; --selection:#aab8ff35; --studio-tint:#303b56; --studio-accent:#b8c3ff; }
:root[data-studio-skin="sage"] { --bg-app:#18251f; --bg-toolbar:#1e2c24; --bg-panel:#24362b; --bg-panel-header:#283d2f; --bg-elevated:#304936; --bg-input:#1d2e24; --bg-segment:#1b2b21; --border:#354c3b; --border-strong:#597060; --text:#e8eee3; --text-dim:#b0c2b3; --text-mute:#98ad9c; --blue:#acd3ab; --blue-soft:#acd3ab18; --primary-bg:#4d7b59; --pill-active-bg:#3e5944; --pill-active-text:#eff7e9; --success:#a8cda5; --scrollbar:#496750; --scrollbar-hover:#6b8b71; --selection:#acd3ab35; --studio-rail:#13251d; --studio-rail-ink:#9db9a4; --studio-canvas:#19271f; --studio-tint:#334d36; --studio-accent:#c2d9b4; }
:root[data-studio-skin="paper"] { --bg-app:#292622; --bg-toolbar:#302d28; --bg-panel:#36322c; --bg-panel-header:#3a352e; --bg-elevated:#433e35; --bg-input:#2e2a24; --bg-segment:#29251f; --border:#4d463c; --border-strong:#766b59; --text:#f0e9dc; --text-dim:#c6bba8; --text-mute:#aea28e; --blue:#e0bc93; --blue-soft:#e0bc9318; --primary-bg:#85613f; --pill-active-bg:#61503e; --pill-active-text:#fff4e4; --success:#b7c59e; --scrollbar:#665c4d; --scrollbar-hover:#887961; --selection:#e0bc9335; --studio-rail:#24211c; --studio-rail-ink:#c5b39b; --studio-canvas:#2b2721; --studio-tint:#514432; --studio-accent:#e8c8a0; }
:root[data-studio-skin="slate"][data-ui-theme="light"] { --bg-app:#f0f2f7; --bg-toolbar:#fbfcff; --bg-panel:#fff; --bg-panel-header:#f7f8fc; --bg-elevated:#eef1f8; --bg-input:#fff; --bg-segment:#e9edf5; --border:#e0e5ef; --border-strong:#bac4d7; --text:#2b3449; --text-dim:#64728b; --text-mute:#69758b; --blue:#5968a8; --blue-soft:#5968a810; --primary-bg:#4c5b9c; --pill-active-bg:#fff; --pill-active-text:#384777; --success:#3b805d; --scrollbar:#c6cfdf; --scrollbar-hover:#a4b1c9; --selection:#5968a825; --studio-tint:#e6eaf6; --studio-accent:#52639b; --studio-canvas:#eef1f6; --studio-rail:#202a40; }
:root[data-studio-skin="sage"][data-ui-theme="light"] { --bg-app:#f4f6ef; --bg-toolbar:#fcfdf9; --bg-panel:#fafbf7; --bg-panel-header:#f5f8f0; --bg-elevated:#edf3e8; --bg-input:#fffefb; --bg-segment:#e9eee4; --border:#e2e8dc; --border-strong:#bbcbbb; --text:#283d30; --text-dim:#637967; --text-mute:#6b7d6b; --blue:#50795b; --blue-soft:#50795b10; --primary-bg:#2e4b37; --pill-active-bg:#fffefb; --pill-active-text:#2d533b; --success:#507d5a; --scrollbar:#ccd9c6; --scrollbar-hover:#acbea4; --selection:#50795b25; --studio-rail:#172c22; --studio-rail-ink:#a4bca9; --studio-tint:#e6eee0; --studio-accent:#52745a; --studio-canvas:#f3f5ee; }
:root[data-studio-skin="paper"][data-ui-theme="light"] { --bg-app:#f5f1e9; --bg-toolbar:#fffdf8; --bg-panel:#fcfaf5; --bg-panel-header:#f8f4ed; --bg-elevated:#f0e9de; --bg-input:#fffdf8; --bg-segment:#eee8dd; --border:#e7ded0; --border-strong:#cebea7; --text:#463c31; --text-dim:#84745f; --text-mute:#83725b; --blue:#a2764e; --blue-soft:#a2764e10; --primary-bg:#806043; --pill-active-bg:#fffdf8; --pill-active-text:#755036; --success:#688357; --scrollbar:#d8cbb8; --scrollbar-hover:#bdab92; --selection:#a2764e25; --studio-rail:#3b3025; --studio-rail-ink:#c7b69d; --studio-tint:#f1e5d4; --studio-accent:#996c43; --studio-canvas:#f4efe6; }
.studio-icon-sprite { position:absolute; width:0; height:0; overflow:hidden; }
.studio-app svg,.studio-command-dialog svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
#app.studio-app { display:grid; grid-template-columns:68px minmax(0,1fr); min-height:0; overflow:hidden; font-size:13px; }
.studio-shell { display:flex; flex-direction:column; min-width:0; min-height:0; }
.studio-skip { position:fixed; top:-80px; left:80px; z-index:150; padding:12px; background:var(--bg-panel); color:var(--text); }
.studio-skip:focus { top:12px; }
.studio-rail { display:flex; flex-direction:column; align-items:center; gap:10px; background:var(--studio-rail); color:var(--studio-rail-ink); padding:24px 0 20px; z-index:25; }
.studio-brand { display:flex; align-items:center; justify-content:center; text-decoration:none; width:36px; height:38px; border-radius:12px; background:#e5eadc; color:#24392a; font:800 26px/1 var(--sans); letter-spacing:-3px; margin-bottom:25px; }
.studio-brand span { color:#a07550; padding-right:3px; }
.studio-rail-button { border:0; width:42px; height:42px; border-radius:11px; color:inherit; background:transparent; display:grid; place-items:center; cursor:pointer; position:relative; }
.studio-rail-button:hover,.studio-rail-button.active { background:#ffffff16; color:#fff; }
.studio-rail-button.active::before { content:""; position:absolute; height:20px; width:3px; border-radius:4px; background:#dbc49a; left:-13px; }
.studio-rail-spacer { flex:1; }
.studio-theme-toggle { border:0; min-width:0; width:44px; padding:10px 2px; color:inherit; display:flex; flex-direction:column; gap:4px; font-size:10px; }
.studio-theme-toggle:hover { border-color:transparent; background:#ffffff10; color:#fff; }
.studio-theme-toggle [data-theme-icon] { font-size:23px; }
.studio-local-badge { font:8px var(--mono); letter-spacing:1px; margin-top:10px; color:#b5c0b5; }
#mdToolbar.studio-topbar { display:flex; flex-direction:row; justify-content:space-between; align-items:center; min-height:78px; padding:16px 26px; gap:18px; flex-wrap:nowrap; }
.studio-top-left,.studio-top-actions { display:flex; align-items:center; gap:10px; min-width:0; }
.studio-top-actions { flex-shrink:0; }
.studio-crumb-icon { display:grid; place-items:center; width:35px; height:35px; flex-shrink:0; background:var(--studio-tint); color:var(--studio-accent); border-radius:11px; }
.studio-document-identity { min-width:0; }
.studio-breadcrumb { display:flex; align-items:center; gap:10px; color:var(--text-mute); font-size:11px; white-space:nowrap; min-width:0; }
.studio-breadcrumb strong { color:var(--text); font-size:12px; overflow:hidden; text-overflow:ellipsis; font-weight:650; }
.studio-separator { opacity:.45; }
.studio-filename { margin-top:6px; font-size:10px; color:var(--text-mute); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.studio-icon-button { appearance:none; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; cursor:pointer; width:36px; height:36px; border:1px solid var(--border); border-radius:10px; color:var(--text-dim); background:transparent; }
.studio-icon-button:hover { background:var(--bg-elevated); color:var(--text); }
.studio-top-actions :is(.btn-primary,.btn-ghost) { display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:10px; min-height:36px; font-size:11px; padding:8px 12px; }
.studio-body { display:flex; flex:1 1 auto; min-height:0; min-width:0; position:relative; }
.studio-sidebar { flex:0 0 224px; width:224px; min-width:0; background:var(--bg-panel); padding:25px 17px 22px; overflow:auto; border-right:1px solid var(--border); scrollbar-width:thin; }
.studio-sidebar-heading,.studio-inspector-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:23px; }
.studio-sidebar-heading h1 { font-size:14px; margin:0; font-weight:750; letter-spacing:-.5px; }
.studio-sidebar-heading p { margin:7px 0 0; font-size:10px; color:var(--text-mute); }
.studio-sidebar-heading .studio-icon-button { width:28px; height:28px; border:0; }
.studio-drawer-close { display:none; }
.studio-file-search { display:flex; align-items:center; gap:7px; height:37px; padding:0 10px; margin-bottom:24px; border:1px solid var(--border); border-radius:9px; background:var(--bg-input); color:var(--text-mute); }
.studio-file-search svg { width:15px; height:15px; }
.studio-file-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--text); font:11px var(--sans); }
.studio-file-search:focus-within { outline:2px solid var(--blue); outline-offset:2px; }
.studio-file-search kbd { white-space:nowrap; font:8px var(--sans); opacity:.7; }
.studio-section-heading { display:flex; align-items:center; justify-content:space-between; margin:20px 5px 10px; color:var(--text-mute); font-size:9px; letter-spacing:1.2px; font-weight:700; }
.studio-text-button { border:0; background:transparent; padding:4px 0; color:var(--studio-accent); font:600 10px var(--sans); letter-spacing:0; cursor:pointer; }
.studio-text-button:hover { color:var(--text); }
.studio-file-list { min-height:36px; }
.studio-empty { margin:13px 5px; color:var(--text-mute); font-size:11px; line-height:1.8; }
.studio-file-list button,.studio-nav-button { display:flex; align-items:center; gap:9px; width:100%; border:0; border-radius:8px; background:transparent; color:var(--text-dim); padding:10px; font:11px/1.5 var(--sans); text-align:left; overflow-wrap:anywhere; cursor:pointer; }
.studio-file-list button:hover,.studio-nav-button:hover { background:var(--bg-elevated); color:var(--text); }
.studio-file-list button.active,.studio-file-list [aria-current="page"],.studio-file-list [aria-selected="true"] { background:var(--studio-tint); color:var(--studio-accent); font-weight:650; }
.studio-sidebar-actions { margin-top:10px; padding-top:8px; border-top:1px solid var(--border); }
.studio-sidebar .studio-nav-button svg { width:15px; height:15px; opacity:.8; }
.studio-sidebar #mdOutline { width:auto; max-width:none; flex:auto; border:0; background:transparent; position:static; box-shadow:none; overflow:visible; }
.studio-sidebar .outline-entry { color:var(--text-dim); font-size:11px; padding-top:8px; padding-bottom:8px; border-radius:7px; }
.studio-workspace-tools { border-top:1px solid var(--border); margin-top:22px; padding-top:17px; color:var(--text-mute); font-size:11px; }
.studio-workspace-tools summary { cursor:pointer; }
.studio-workspace-tools>div { margin-top:10px; }
.studio-sidebar-note { padding:18px 15px; margin-top:25px; border-radius:12px; background:var(--studio-tint); }
.studio-note-mark { font-size:23px; color:var(--studio-accent); }
.studio-sidebar-note strong { display:block; font-size:11px; margin:9px 0; }
.studio-sidebar-note p { font-size:10px; line-height:1.9; color:var(--text-dim); }
.studio-center { flex:1 1 auto; display:flex; flex-direction:column; min-width:0; min-height:0; background:var(--studio-canvas); position:relative; }
.studio-modebar { flex:0 0 auto; min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 24px 13px; }
.studio-canvas-label { display:flex; align-items:center; gap:7px; color:var(--text-mute); font-size:9px; letter-spacing:.8px; white-space:nowrap; }
.studio-canvas-label svg { width:13px; height:13px; }
.studio-modebar .segmented { border-radius:11px; padding:4px; }
.studio-modebar .seg-btn { display:flex; align-items:center; justify-content:center; gap:6px; border-radius:7px; padding:7px 10px; font-size:10px; font-weight:600; }
.studio-modebar .seg-btn svg { width:13px; height:13px; }
.studio-center #workspace { flex:1 1 auto; min-height:0; padding:0 24px 24px; overflow:hidden; }
.studio-center .pane { border:1px solid var(--border); border-radius:13px; box-shadow:var(--studio-shadow); overflow:hidden; min-width:0; }
.studio-center .pane-header { height:43px; padding:0 15px; border-bottom:1px solid var(--border); flex-shrink:0; }
.studio-center .pane-title { display:flex; align-items:center; gap:7px; font-size:9px; letter-spacing:.5px; }
.studio-center .pane-title svg { width:13px; height:13px; }
.studio-center .pane-stats { font-size:9px; }
.studio-center .divider { flex:0 0 14px; background:transparent; }
.studio-center .divider-grip { width:2px; height:28px; background:var(--border-strong); }
.studio-center .divider:hover .divider-grip,.studio-center .divider.dragging .divider-grip { background:var(--blue); }
.studio-center .divider:focus-visible { outline-offset:-4px; }
.studio-center .CodeMirror { padding:19px 14px; background:var(--bg-panel); font-size:12px; line-height:1.85; }
.studio-center .CodeMirror-gutters { background:var(--bg-panel); border:0; }
.studio-center .pane-preview { background:var(--studio-paper); border-color:#e4e6de; }
.studio-center .pane-preview .pane-header { background:#fafbf6; border-color:#e7eade; color:#6d7d6b; }
.studio-center .pane-preview .pane-title { color:#6d7d6b; }
.studio-paper-label { font-size:8px; letter-spacing:1px; color:#8d9a86; }
.studio-center #previewHost { background:var(--studio-paper); padding:30px 32px 65px; height:100%; scrollbar-color:#cbd5c8 transparent; }
.studio-inspector { flex:0 0 258px; width:258px; padding:26px 18px 22px; border-left:1px solid var(--border); background:var(--bg-panel); overflow:auto; scrollbar-width:thin; }
.studio-inspector-heading { margin-bottom:5px; }
.studio-inspector-heading h2 { margin:0; font-size:14px; font-weight:750; letter-spacing:-.4px; }
.studio-inspector-heading button { border:0; width:25px; height:25px; }
.studio-inspector-intro { margin:0 0 24px; font-size:10px; color:var(--text-mute); }
.studio-card { border:1px solid var(--border); border-radius:12px; padding:17px 14px; margin-bottom:13px; background:var(--bg-toolbar); }
.studio-card h3 { display:flex; align-items:center; justify-content:space-between; margin:0 0 16px; font-size:11px; color:var(--text); }
.studio-card h3>span { color:var(--text-mute); font:8px var(--sans); letter-spacing:.8px; }
.studio-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.studio-stats>div { text-align:center; border-right:1px solid var(--border); }
.studio-stats>div:last-child { border:0; }
.studio-stats b { display:block; font-size:18px; font-weight:700; color:var(--studio-accent); }
.studio-stats span { display:block; font-size:9px; color:var(--text-mute); margin-top:7px; }
.studio-card-note { color:var(--text-mute); font-size:10px; line-height:1.8; margin:13px 0 0; overflow-wrap:anywhere; }
.studio-field { display:flex; flex-direction:column; gap:9px; font-size:10px; color:var(--text-dim); }
.studio-field select { max-width:100%; min-width:0; appearance:auto; width:100%; border:1px solid var(--border); border-radius:8px; background:var(--bg-input); color:var(--text); padding:9px 7px; font:10px var(--sans); }
.studio-setting-row { display:flex; align-items:center; justify-content:space-between; gap:7px; font-size:10px; color:var(--text-dim); margin:15px 0 0; }
.studio-choice { display:flex; padding:3px; gap:2px; background:var(--bg-segment); border-radius:8px; }
.studio-choice button { border:0; padding:6px 9px; border-radius:6px; color:var(--text-mute); background:transparent; font:600 9px var(--sans); cursor:pointer; }
.studio-choice button.active { background:var(--pill-active-bg); color:var(--pill-active-text); box-shadow:0 1px 4px #0000000d; }
.studio-check { display:flex; align-items:center; gap:8px; margin-top:17px; color:var(--text-dim); font-size:10px; }
.studio-check input { margin:0; accent-color:var(--blue); }
.studio-skins { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.studio-skins button { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:7px; padding:8px 4px; font:9px var(--sans); background:var(--bg-input); color:var(--text-dim); border:1px solid var(--border); border-radius:8px; cursor:pointer; }
.studio-skins button.active { border-color:var(--blue); color:var(--text); background:var(--blue-soft); }
.studio-swatch { display:block; height:15px; width:25px; border-radius:4px; box-shadow:inset 0 0 0 1px #00000014; }
.studio-swatch.sage { background:linear-gradient(90deg,#243b2d 30%,#d8e4cc 30%); }.studio-swatch.paper { background:linear-gradient(90deg,#71583f 30%,#f0e3ce 30%); }.studio-swatch.slate { background:linear-gradient(90deg,#29374f 30%,#d9e0f0 30%); }
.studio-export-button { display:flex; align-items:center; gap:9px; width:100%; padding:11px 9px; border:1px solid var(--border); border-radius:8px; background:transparent; color:var(--text-dim); font:10px var(--sans); margin-top:7px; cursor:pointer; }
.studio-export-button:hover { background:var(--bg-elevated); color:var(--text); }
.studio-export-button svg { width:14px; height:14px; }.studio-export-button>span { margin-left:auto; color:var(--text-mute); font-size:9px; }
.studio-edit-tools .studio-nav-button { font-size:10px; padding:8px 4px; }
.studio-edit-tools .segmented { border-radius:8px; border:0; }
.studio-edit-tools .seg-btn { font-size:9px; padding:5px 7px; border-radius:5px; }
.studio-shortcut-help .shortcut-help-button { width:100%; justify-content:space-between; font-size:10px; }
.studio-shortcut-help .shortcut-popover { bottom:100%; top:auto; right:0; max-width:calc(100vw - 24px); }
.studio-shortcut-help .shortcut-popover::before { display:none; }
.studio-statusbar { display:flex; justify-content:space-between; align-items:center; gap:16px; height:32px; flex:0 0 32px; border-top:1px solid var(--border); padding:0 20px; color:var(--text-mute); background:var(--bg-toolbar); font-size:9px; }
.studio-statusbar>div { display:flex; align-items:center; gap:15px; min-width:0; }.studio-save-status { flex:1; }
.studio-statusbar #mdSaveStatus { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.studio-status-dot { height:5px; width:5px; border-radius:50%; background:var(--success); flex-shrink:0; }
.studio-statusbar:has(.save-failed) .studio-status-dot { background:#d39974; }
.studio-statusbar .save-failed { color:var(--code-text); }
.studio-version { font:8px var(--mono); letter-spacing:1px; }
.studio-exit-focus { position:absolute; display:none; align-items:center; gap:9px; left:50%; bottom:25px; transform:translateX(-50%); border:1px solid var(--border-strong); border-radius:24px; background:var(--bg-toolbar); color:var(--text); box-shadow:0 8px 30px #0003; font:11px var(--sans); padding:11px 17px; cursor:pointer; z-index:15; white-space:nowrap; }
.studio-exit-focus kbd { color:var(--text-mute); font-size:9px; margin-left:8px; }
.studio-sidebar-hidden .studio-sidebar,.studio-inspector-hidden .studio-inspector { display:none; }
.studio-focus .studio-sidebar,.studio-focus .studio-inspector { display:none!important; }.studio-focus .studio-exit-focus { display:flex; }.studio-focus .studio-canvas-label { visibility:hidden; }
.studio-focus .studio-center #workspace { padding:0 6vw 72px; }.studio-focus .studio-topbar { min-height:65px!important; }
.studio-command-dialog { width:min(540px,calc(100vw - 28px)); margin:16vh auto auto; padding:12px; border:1px solid var(--border-strong); border-radius:16px; background:var(--bg-panel); color:var(--text); box-shadow:0 25px 90px #0005; overflow:hidden; }
.studio-command-dialog::backdrop { background:#131c236b; backdrop-filter:blur(3px); }
.studio-command-heading { display:flex; align-items:center; gap:10px; padding:5px 10px 13px; border-bottom:1px solid var(--border); }
#studioCommandInput { flex:1; width:100%; min-width:0; border:0; background:transparent; color:var(--text); padding:7px 0; font:13px var(--sans); outline:0; }
.studio-command-option { display:flex; align-items:center; justify-content:space-between; gap:15px; color:var(--text-dim); padding:12px 11px; border-radius:8px; cursor:pointer; font-size:12px; margin-top:3px; }
.studio-command-option[aria-selected="true"],.studio-command-option:hover { background:var(--studio-tint); color:var(--text); }.studio-command-option kbd { color:var(--text-mute); font:10px var(--sans); white-space:nowrap; }
#studioCommandResults { max-height:45vh; overflow:auto; padding:6px 0; }
.studio-command-hint { display:flex; gap:16px; font-size:9px; color:var(--text-mute); border-top:1px solid var(--border); margin:6px 0 0; padding:12px 10px 0; }
.studio-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.studio-toast { position:fixed; bottom:48px; left:50%; transform:translateX(-50%); max-width:min(480px,calc(100vw - 24px)); padding:12px 18px; border:1px solid var(--border-strong); border-radius:11px; background:var(--bg-elevated); color:var(--text); box-shadow:0 8px 35px #0003; font:12px/1.6 var(--sans); z-index:120; }.studio-toast[data-error="true"] { border-color:#bc8056; }
.studio-drawer-backdrop { display:none; }
@media(max-width:1320px) { .studio-canvas-label span { display:none; }.studio-sidebar { width:205px; flex-basis:205px; }.studio-inspector { width:240px; flex-basis:240px; }.studio-center #workspace { padding:0 17px 19px; }.studio-modebar { padding-left:17px; padding-right:17px; }.studio-center #previewHost { padding:26px 24px 60px; } }
@media(max-width:1439px) { .studio-inspector { display:none; }.studio-inspector-open .studio-inspector { display:block; position:absolute; z-index:35; right:0; top:0; bottom:0; width:280px; box-shadow:-14px 0 45px #0003; }.studio-inspector-open .studio-drawer-backdrop { display:block; } }
@media(max-width:1099px) { .studio-sidebar { display:none; }.studio-sidebar-open .studio-sidebar { display:block; position:absolute; top:0; bottom:0; left:0; width:260px; z-index:35; box-shadow:14px 0 45px #0003; }.studio-sidebar-open .studio-drawer-backdrop { display:block; }.studio-drawer-close { display:inline-flex; }.studio-drawer-backdrop { position:fixed; top:78px; right:0; bottom:32px; left:68px; background:#101b2559; backdrop-filter:blur(1px); z-index:30; width:auto; height:auto; border:0; cursor:pointer; }.studio-breadcrumb>span:first-child { display:none; }.studio-separator { display:none; } }
@media(max-width:767px) { #app.studio-app { grid-template-columns:52px minmax(0,1fr); }.studio-rail { padding-top:18px; gap:8px; }.studio-brand { width:32px; height:34px; margin-bottom:20px; font-size:24px; }.studio-rail-button { width:35px; height:38px; }.studio-rail-button.active::before { left:-8px; }.studio-local-badge { font-size:7px; letter-spacing:.3px; }.studio-theme-toggle { width:36px; }#mdToolbar.studio-topbar { min-height:68px; padding:12px; gap:9px; }.studio-crumb-icon { display:none; }.studio-top-actions { gap:6px; }.studio-top-actions .studio-focus-button { display:none; }.studio-breadcrumb strong { font-size:11px; }.studio-filename { font-size:9px; margin-top:5px; max-width:28vw; }.studio-top-actions .studio-save { padding:8px; }.studio-top-actions .studio-save svg { display:none; }.studio-icon-button { width:32px; height:32px; }.studio-modebar { min-height:63px; padding:12px 12px; gap:7px; }.studio-canvas-label { display:none; }.studio-modebar .segmented { margin-left:auto; }.studio-modebar .seg-btn { padding:7px 9px; font-size:10px; gap:4px; }.studio-center #workspace { padding:0 10px 12px; }.studio-center .pane { border-radius:10px; }.studio-center .pane-editor { flex-basis:auto!important; }.studio-center .pane-header { height:37px; padding:0 11px; }.studio-center .CodeMirror { padding:14px 8px; font-size:12px; }.studio-center #previewHost { padding:24px 20px 55px; }.studio-statusbar { padding:0 12px; height:31px; flex-basis:31px; font-size:8px; gap:10px; }.studio-statusbar>div { gap:9px; }.studio-statusbar #studioStorageStatus,.studio-statusbar .studio-version { display:none; }.studio-drawer-backdrop { top:68px; left:52px; bottom:31px; }.studio-sidebar-open .studio-sidebar { width:min(280px,calc(100vw - 66px)); }.studio-inspector-open .studio-inspector { width:min(290px,calc(100vw - 66px)); }.studio-center .divider { flex-basis:8px; }.studio-center[data-studio-view="split"] #previewHost { padding:19px 12px; }.studio-center .pane-stats { max-width:100px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }.studio-focus .studio-center #workspace { padding:0 10px 68px; }.studio-command-dialog { margin-top:10vh; }.studio-center #findPanel { margin:0 10px 10px; border:1px solid var(--border); border-radius:10px; font-size:11px; padding:9px; }.studio-center #findPanel input[type="text"] { flex:1; min-width:75px; width:100px; }.studio-center #findPanel .btn-pill { font-size:10px; padding:5px 8px; } }
@media(max-width:430px) { .studio-top-actions #studioCommandBtn { display:none; }.studio-top-actions .studio-save { font-size:10px; }.studio-filename { max-width:35vw; }.studio-modebar .seg-btn svg { display:none; }.studio-statusbar>div:last-child>span:last-of-type { display:none; } }
@media(max-height:620px) { .studio-sidebar,.studio-inspector { padding-top:18px; }.studio-sidebar-heading { margin-bottom:18px; }.studio-sidebar-note { display:none; }.studio-rail { padding-top:15px; }.studio-brand { margin-bottom:17px; }.studio-modebar { min-height:58px; padding-top:10px; padding-bottom:10px; } }
@media(prefers-reduced-motion:reduce) { .studio-app *,.studio-command-dialog * { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
.studio-workspace-select { display:block; margin:-9px 0 18px; }.studio-workspace-select select { width:100%; min-width:0; padding:8px 9px; background:var(--bg-input); color:var(--text-dim); border:1px solid var(--border); border-radius:8px; font:10px var(--sans); }
.studio-drawer-backdrop { position:fixed; top:78px; right:0; bottom:32px; left:68px; background:#101b2559; backdrop-filter:blur(1px); z-index:30; width:auto; height:auto; border:0; cursor:pointer; }
.studio-drawer-backdrop[hidden],.studio-toast[hidden] { display:none!important; }
.studio-center .CodeMirror-gutters { display:block; }.studio-center .CodeMirror-linenumber { color:var(--text-mute); padding-right:12px; font-size:10px; opacity:.65; }
@media(max-width:767px) { .studio-drawer-backdrop { top:68px; left:52px; bottom:31px; }.studio-center .CodeMirror-linenumber { padding-right:8px; font-size:9px; } }
/* File rows are rendered by the workspace adapter. */
.studio-file-row { display:flex; align-items:center; gap:3px; border-radius:8px; margin:2px 0; min-width:0; }
.studio-file-row:has(.active) { background:var(--studio-tint); }
.studio-file-list .studio-file-entry { flex:1; min-width:0; width:auto; padding:9px 10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block; }
.studio-file-list .studio-file-remove { flex:0 0 25px; width:25px; height:27px; padding:0; display:grid; place-items:center; color:var(--text-mute); font-size:14px; opacity:0; }
.studio-file-row:hover .studio-file-remove,.studio-file-row:focus-within .studio-file-remove { opacity:1; }.studio-file-list .studio-file-remove:hover { color:var(--code-text); }
.studio-file-group { color:var(--text-dim); font-size:10px; margin:8px 0; }.studio-file-group>summary { cursor:pointer; padding:7px 6px; overflow-wrap:anywhere; }.studio-file-group>.studio-file-row { margin-left:8px; }
.studio-modebar .seg-btn:disabled { opacity:.35; cursor:not-allowed; }
@media(hover:none) { .studio-file-list .studio-file-remove { opacity:1; } }
/* Comfortable touch targets without changing the desktop layout. */
@media (max-width:767px) {
  .studio-rail-button,.studio-theme-toggle {min-width:44px;min-height:44px;}
  .studio-top-actions .studio-icon-button,.studio-top-actions .studio-save {min-width:44px;min-height:44px;}
  .studio-modebar .seg-btn {min-height:44px;}
  .studio-sidebar .studio-nav-button,.studio-sidebar .studio-file-list button,.studio-inspector .studio-nav-button,.studio-inspector .studio-export-button {min-height:44px;}
  .studio-inspector .studio-choice button,.studio-inspector .studio-skins button {min-height:44px;}
}

/* Collection navigation, consolidated controls, and top-layer descriptions. */
[hidden] {display:none!important;}
.studio-title-button {font:650 12px var(--sans);color:var(--text);background:none;border:0;padding:2px 4px;margin:-2px -4px;cursor:text;text-align:left;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.studio-title-button:hover {background:var(--bg-elevated);}
.studio-document-identity {min-width:0;position:relative;}
.studio-title-input {font:650 12px var(--sans);color:var(--text);background:var(--bg-input);border:1px solid var(--blue);border-radius:5px;width:min(300px,35vw);padding:5px 7px;}
.studio-title-error {position:absolute;top:100%;left:0;padding:7px 10px;background:var(--bg-elevated);color:#e7ad95;z-index:60;max-width:320px;min-width:180px;border:1px solid var(--border-strong);border-radius:6px;line-height:1.6;}
.studio-rail-labeled {height:auto;min-height:52px;gap:5px;padding:7px 2px;}
.studio-rail-labeled>span {font:10px var(--sans);}
.studio-rail .studio-shortcut-help {position:static;}
.studio-rail .shortcut-help-button {font:600 20px var(--sans);padding:0;color:inherit;}
.studio-save-group {display:flex;align-items:stretch;border-radius:9px;}
.studio-save-group #downloadMdBtn {border-radius:9px 0 0 9px;}
.studio-export-toggle {padding:0 7px;min-width:28px;border-left:1px solid #ffffff26;border-radius:0 9px 9px 0;display:flex;align-items:center;justify-content:center;}
.studio-export-toggle svg {width:14px;height:14px;}
.studio-pane-actions {display:flex;align-items:center;gap:8px;}
.studio-pane-actions .studio-icon-button {height:25px;width:25px;padding:4px;}
.studio-pane-actions svg {width:14px;height:14px;}
.studio-canvas-tools {display:flex;align-items:center;gap:16px;min-width:0;flex:1;}
.studio-mode-actions {display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0;}
#studioFormatting {display:flex;align-items:center;gap:5px;min-width:0;}
#studioFormattingToggle {width:auto;padding:5px 7px;gap:3px;font:600 13px var(--sans);display:flex;}
#studioFormattingToggle svg {width:11px;height:11px;transition:transform .15s;}
#studioFormattingToggle[aria-expanded="true"] svg {transform:rotate(180deg);}
.studio-formatting-tools {display:flex;align-items:center;gap:2px;flex-wrap:wrap;}
.studio-formatting-tools button {height:30px;min-width:29px;border:0;background:transparent;color:var(--text-dim);font:13px var(--sans);border-radius:5px;cursor:pointer;padding:4px;display:inline-flex;align-items:center;justify-content:center;}
.studio-formatting-tools button:hover {background:var(--bg-elevated);color:var(--text);}
.studio-formatting-tools svg {width:15px;height:15px;}
.studio-center[data-studio-view="preview"] #scrollSegment,.studio-center[data-studio-view="editor"] #scrollSegment {display:none;}
.studio-file-group>summary {display:flex;align-items:center;gap:6px;list-style:none;}
.studio-file-group>summary::before {content:'▸';font-size:9px;flex-shrink:0;}
.studio-file-group[open]>summary::before {content:'▾';}
.studio-file-group>summary::-webkit-details-marker {display:none;}
.studio-file-group>summary svg {width:16px;height:16px;color:var(--studio-accent);}
.studio-file-group>summary span {min-width:0;overflow-wrap:anywhere;}
.studio-collection {padding-bottom:8px;border-bottom:1px solid var(--border);}
.studio-collection.selected>summary {color:var(--text);background:var(--blue-soft);border-radius:6px;}
.studio-collection-actions {display:flex;justify-content:flex-end;gap:10px;padding:2px 6px 6px;}
.studio-collection-actions .studio-text-button {font-size:9px;}
.studio-collection .studio-file-entry {display:flex;align-items:center;gap:6px;padding:8px 5px;}
.studio-file-entry svg {width:14px;height:14px;flex-shrink:0;}
.studio-file-entry>span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.studio-file-row .studio-file-remove {width:20px;min-width:20px;padding:3px;font-size:12px;}
.studio-asset-links {margin-left:10px;}
#studioOutlineView {padding-top:6px;}
#studioOutlineView #mdOutline {display:block;}
.studio-small-dialog,.studio-settings-dialog {box-sizing:border-box;border:1px solid var(--border-strong);border-radius:16px;background:var(--bg-panel);color:var(--text);padding:24px;box-shadow:0 25px 90px #0005;font:13px/1.7 var(--sans);max-height:calc(100dvh - 36px);overflow:auto;}
.studio-small-dialog {width:min(480px,calc(100vw - 28px));}
.studio-settings-dialog {width:min(800px,calc(100vw - 28px));}
.studio-small-dialog::backdrop,.studio-settings-dialog::backdrop {background:#10141e88;backdrop-filter:blur(4px);}
.studio-small-dialog h2,.studio-dialog-heading h2 {font-size:18px;margin:0 0 18px;letter-spacing:-.4px;}
.studio-small-dialog p {white-space:pre-line;overflow-wrap:anywhere;}
.studio-dialog-heading {display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;}
.studio-dialog-heading h2 {margin:0;}
.studio-dialog-actions {display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:24px;}
.studio-dialog-actions button {min-height:36px;padding:7px 14px;}
.studio-settings-grid {display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.studio-settings-grid .studio-card {margin:0;}
.studio-small-dialog input,.studio-small-dialog select,.studio-settings-dialog select {width:100%;box-sizing:border-box;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text);padding:8px 9px;border-radius:6px;font:inherit;}
.studio-small-dialog .studio-field {margin:14px 0;}
.studio-settings-grid .studio-skins {gap:6px;}
#studioCollectionError,#studioMoveError,#studioImageError {color:#e7ad95;font-size:12px;}
.studio-time-tabs {display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:14px 20px;border-bottom:1px solid var(--border);}
.studio-time-tabs [role="tab"] {padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer;font:12px var(--sans);}
.studio-time-tabs [aria-selected="true"] {background:var(--blue-soft);color:var(--blue);}
.studio-time-tabs #tempSaveBtn {margin-left:auto;}
#historyList .history-item p {color:var(--text-mute);font-size:11px;}
#historyList .history-item {overflow-wrap:anywhere;}
.studio-floating-menu[popover] {position:fixed;inset:auto;margin:0;padding:7px;min-width:240px;max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);overflow:auto;background:var(--bg-panel);color:var(--text);border:1px solid var(--border-strong);border-radius:11px;box-shadow:0 12px 40px #0004;}
.studio-floating-menu button {display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:11px 12px;text-align:left;border:0;border-radius:6px;background:none;color:inherit;font:12px var(--sans);cursor:pointer;}
.studio-floating-menu button:hover,.studio-floating-menu button:focus-visible {background:var(--bg-elevated);}
.studio-floating-menu button>span {color:var(--text-mute);font-size:10px;}
.studio-control-tooltip[popover] {position:fixed;inset:auto;margin:0;padding:9px 12px;max-width:min(340px,calc(100vw - 20px));box-sizing:border-box;white-space:pre-line;overflow-wrap:anywhere;background:var(--bg-elevated);color:var(--text);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 6px 24px #0004;font:11px/1.7 var(--sans);pointer-events:none;}
#shortcutTooltip[popover] {position:fixed;inset:auto;margin:0;max-width:calc(100vw - 20px);width:min(480px,calc(100vw - 20px));max-height:calc(100dvh - 20px);overflow:auto;box-sizing:border-box;z-index:1000;background:var(--bg-panel);color:var(--text);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 12px 40px #0004;padding:18px;}
#shortcutTooltip:popover-open {display:block;opacity:1;visibility:visible;transform:none;pointer-events:auto;}
#shortcutTooltip:not(:popover-open) {display:none;}
.studio-control-tooltip::backdrop,#shortcutTooltip::backdrop {background:transparent;pointer-events:none;}
#studioSettingsDialog svg {width:16px;height:16px;fill:none;stroke:currentColor;}
.studio-focus .studio-topbar {display:flex;}
@media(max-width:1250px){.studio-canvas-tools .studio-canvas-label {display:none;}.studio-modebar {flex-wrap:wrap;}.studio-mode-actions {margin-left:auto;}.studio-formatting-tools {max-width:260px;}}
@media(max-width:767px){.studio-settings-grid {grid-template-columns:1fr;}.studio-small-dialog,.studio-settings-dialog {padding:18px;}.studio-rail {gap:3px;padding-bottom:10px;}.studio-rail .studio-rail-labeled {min-height:47px;}.studio-mode-actions {gap:7px;flex-wrap:wrap;}.studio-modebar {gap:6px;}.studio-modebar #scrollSegment {display:none!important;}.studio-canvas-tools {flex-basis:100%;}.studio-formatting-tools {max-width:none;}.studio-time-tabs {padding:10px;gap:4px;}.studio-time-tabs #tempSaveBtn {margin-left:0;}.studio-title-input {width:29vw;}.studio-save-group .studio-save {padding:8px 6px;}.studio-export-toggle {min-width:23px;padding:0 4px;}.studio-top-actions {gap:4px;}.studio-title-button {font-size:11px;}}
@media(pointer:coarse){.studio-formatting-tools button {min-height:40px;min-width:34px;}.studio-pane-actions .studio-icon-button {min-height:32px;min-width:32px;}.studio-file-row .studio-file-remove {min-width:25px;min-height:36px;}}
@media(max-height:620px){.studio-rail {padding-top:10px;gap:1px;}.studio-brand {margin-bottom:8px;}.studio-local-badge {display:none;}.studio-rail .studio-rail-button {min-height:32px;height:32px;}.studio-rail .studio-rail-labeled {height:42px;}.studio-theme-toggle {padding:4px 2px;}}

.studio-title-button {min-width:0;max-width:min(440px,45vw);}
.studio-breadcrumb {min-width:0;}
@media(max-width:767px){.studio-title-button {max-width:28vw;}}

/* Additional organization: connected export, grouped records, collection tools. */
.studio-top-actions .studio-save-group {gap:0;overflow:hidden;border-radius:9px;}
.studio-top-actions .studio-save-group #downloadMdBtn {border-top-right-radius:0;border-bottom-right-radius:0;border-right:0;}
.studio-top-actions .studio-save-group #studioExportToggle {border-radius:0 9px 9px 0;border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px solid #ffffff30;padding:0 7px;min-width:29px;}
.studio-collection>summary {gap:5px;}
.studio-collection>summary::before {content:none;}
.studio-tree-chevron {width:13px!important;height:13px!important;flex-shrink:0;transform:rotate(-90deg);transition:transform .12s;}
.studio-collection[open]>summary>.studio-tree-chevron,.studio-outline-branch[open]>summary>.studio-tree-chevron {transform:rotate(0);}
.studio-collection>summary>span:not(.studio-collection-actions) {flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.studio-collection-actions {margin-left:auto;gap:1px;padding:0;flex:0 0 auto;}
.studio-collection-actions .studio-icon-button,.studio-asset-links>summary>.studio-icon-button {width:22px;height:26px;min-width:22px;padding:4px;color:var(--text-mute);}
.studio-collection-actions .studio-icon-button:hover {color:var(--text);background:var(--bg-elevated);}
.studio-collection-actions svg,.studio-asset-links>summary>button svg {width:13px;height:13px;}
.studio-add-document {border:0;border-radius:6px;background:none;color:var(--text-mute);font:11px var(--sans);padding:10px 12px;width:100%;text-align:left;cursor:pointer;}
.studio-add-document:hover {color:var(--studio-accent);background:var(--blue-soft);}
.studio-asset-links>summary>.studio-icon-button {margin-left:auto;}
.studio-outline-branch>summary {display:flex;align-items:center;gap:4px;cursor:pointer;list-style:none;}
.studio-outline-branch>summary::-webkit-details-marker {display:none;}
.studio-outline-branch>summary::marker {content:'';}
.studio-outline-branch .outline-entry,.studio-outline-leaf .outline-entry {flex:1;min-width:0;width:auto;overflow-wrap:anywhere;text-align:left;}
.studio-outline-children {margin-left:14px;padding-left:5px;border-left:1px solid var(--border);}
.studio-outline-leaf {display:flex;align-items:center;padding-left:17px;}
#studioShortcutBtn {font:inherit;}
#studioShortcutBtn .studio-help-icon {font:600 21px/1 var(--sans);}
#studioShortcutBtn>span:last-child,#studioSettingsBtn>span {font:10px var(--sans);}
.studio-time-machine .modal-panel {width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);}
.studio-time-machine svg,.studio-image-dialog svg {width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;}
.studio-record-group {border:1px solid var(--border);border-radius:10px;margin:9px 0;background:var(--bg-input);overflow:hidden;}
.studio-record-group>summary {display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;padding:12px 13px;}
.studio-record-group>summary::-webkit-details-marker {display:none;}
.studio-record-group>summary::marker {content:'';}
.studio-record-group>summary::before {content:'';width:6px;height:6px;flex-shrink:0;border-right:1.5px solid var(--text-mute);border-bottom:1.5px solid var(--text-mute);transform:rotate(-45deg);margin-right:3px;}
.studio-record-group[open]>summary::before {transform:rotate(45deg);}
.studio-current-record {border-color:var(--border-strong);}
.studio-record-name {display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
.studio-record-name>strong {font-size:12px;overflow-wrap:anywhere;}
.studio-record-name>small {font-size:10px;color:var(--text-mute);}
.studio-record-count {color:var(--text-mute);font:10px var(--mono);white-space:nowrap;margin-left:auto;}
.studio-record-action {width:29px;height:29px;padding:5px;border:0;background:transparent;color:var(--text-dim);border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.studio-record-action:hover {background:var(--bg-elevated);color:var(--text);}
.studio-record-action:disabled {opacity:.3;cursor:default;}
.studio-record-actions {display:flex;align-items:center;gap:3px;flex-shrink:0;}
.studio-snapshot-row {display:flex;align-items:center;gap:12px;padding:12px 13px;border-top:1px solid var(--border);}
.studio-snapshot-content {flex:1;min-width:0;}
.studio-snapshot-preview {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;margin:0 0 7px;color:var(--text);}
.studio-snapshot-meta {display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--text-mute);font-size:10px;}
.studio-snapshot-mode {font-size:9px;padding:2px 6px;border-radius:4px;background:var(--bg-elevated);color:var(--text-dim);}
.studio-snapshot-mode[data-mode="manual"] {background:var(--blue-soft);color:var(--blue);}
.studio-record-empty {display:flex;align-items:center;justify-content:center;min-height:96px;margin:0;padding:20px;box-sizing:border-box;text-align:center;color:var(--text-mute);opacity:.65;font:12px/1.8 var(--sans);}
.studio-record-collection-title {font-size:11px;font-weight:600;color:var(--text-mute);margin:20px 2px 9px;}
.studio-time-machine #historyList>hr {border:0;border-top:1px solid var(--border-strong);margin:24px 0;}
.studio-image-dialog {width:min(790px,calc(100vw - 28px));box-sizing:border-box;max-height:calc(100dvh - 36px);overflow:auto;background:var(--bg-panel);color:var(--text);border:1px solid var(--border-strong);border-radius:16px;padding:24px;box-shadow:0 25px 90px #0005;font:13px/1.7 var(--sans);}
.studio-image-dialog::backdrop {background:#10141e88;backdrop-filter:blur(4px);}
.studio-image-tabs {display:flex;gap:6px;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:18px;}
.studio-image-tabs>button {border:0;background:transparent;color:var(--text-dim);padding:8px 12px;border-radius:6px;cursor:pointer;font:12px var(--sans);}
.studio-image-tabs>[aria-selected="true"] {background:var(--blue-soft);color:var(--blue);}
.studio-image-row-labels {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 30px;gap:10px;margin-bottom:7px;color:var(--text-mute);font-size:11px;}
.studio-image-link-row {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 30px;align-items:start;gap:9px;margin-bottom:13px;}
.studio-image-link-row>input {width:100%;min-width:0;box-sizing:border-box;background:var(--bg-input);color:var(--text);border:1px solid var(--border-strong);border-radius:7px;font:12px var(--sans);padding:10px;}
.studio-image-link-row>input:focus {outline:2px solid var(--blue);outline-offset:1px;}
.studio-image-link-row>input[aria-invalid="true"] {border-color:#cf927a;}
.studio-image-link-row>button {width:30px;height:36px;}
.studio-image-row-error {grid-column:1/-1;font-size:11px;color:#e7ad95;}
.studio-image-row-error:empty {display:none;}
.studio-image-assets {display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;max-height:48dvh;overflow:auto;padding:2px;}
.studio-image-assets>.studio-record-empty {grid-column:1/-1;}
.studio-image-asset {display:flex;flex-direction:column;gap:7px;border:1px solid var(--border);border-radius:10px;padding:10px;cursor:pointer;min-width:0;position:relative;}
.studio-image-asset:has(:checked) {border-color:var(--blue);background:var(--blue-soft);}
.studio-image-asset>input {position:absolute;top:16px;left:16px;z-index:1;accent-color:var(--primary-bg);}
.studio-image-asset-preview {display:flex;align-items:center;justify-content:center;position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--bg-input);border-radius:6px;}
.studio-image-asset-preview>img {width:100%;height:100%;object-fit:contain;position:absolute;inset:0;}
.studio-image-preview-fallback {font-size:10px;color:var(--text-mute);opacity:.7;}
.studio-image-asset>strong {font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.studio-image-asset>small {font-size:9px;color:var(--text-mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#studioImageSelectionCount {margin-right:auto;color:var(--text-mute);font-size:11px;}
/* Focus mode is a full canvas; exit floats over content without reserving space. */
#app.studio-app.studio-focus {grid-template-columns:minmax(0,1fr);}
#app.studio-focus .studio-rail,#app.studio-focus #mdToolbar,#app.studio-focus .studio-statusbar,#app.studio-focus .pane-header,#app.studio-focus #mdConflict {display:none!important;}
.studio-focus .studio-center #workspace {padding:0!important;}
.studio-focus .studio-modebar {min-height:48px;padding:8px 14px;}
.studio-focus .studio-canvas-label {display:none!important;}
.studio-exit-focus {position:fixed;left:14px;bottom:14px;transform:none;padding:9px 10px;border-radius:11px;gap:0;z-index:60;max-width:calc(100vw - 28px);}
.studio-exit-symbol {display:flex;flex-direction:column;align-items:center;gap:4px;}
.studio-exit-focus .studio-exit-symbol svg {width:20px;height:20px;}
.studio-exit-focus kbd {font:8px var(--mono);margin:0;}
.studio-exit-description {max-width:0;opacity:0;overflow:hidden;transition:max-width .16s,opacity .16s,margin .16s;}
.studio-exit-focus:hover .studio-exit-description,.studio-exit-focus:focus-visible .studio-exit-description {max-width:160px;opacity:1;margin-left:12px;}
.studio-center #findPanel {display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 24px 0;padding:12px 14px;border:1px solid var(--border);background:var(--bg-panel);border-radius:10px;font:11px var(--sans);}
.studio-center #findPanel input[type="text"] {background:var(--bg-input);color:var(--text);border:1px solid var(--border-strong);border-radius:7px;min-width:100px;width:clamp(110px,16vw,230px);padding:8px 10px;font:12px var(--sans);box-sizing:border-box;}
.studio-center #findPanel input[type="text"]:focus {outline:2px solid var(--blue);outline-offset:1px;}
.studio-center #findPanel input[type="checkbox"] {accent-color:var(--primary-bg);}
.studio-center #findPanel label {display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);}
.studio-center #findPanel #findCount {color:var(--text-mute);margin-left:auto;}
@media(max-width:767px){.studio-time-machine .modal-panel {width:calc(100vw - 18px);}.studio-record-group>summary,.studio-snapshot-row {padding:10px;gap:6px;}.studio-record-actions {gap:0;}.studio-record-action {width:28px;height:30px;}.studio-image-dialog {padding:17px;}.studio-image-row-labels {display:none;}.studio-image-link-row {grid-template-columns:minmax(0,1fr) 30px;}.studio-image-link-row>[data-image-address] {grid-column:1;}.studio-image-link-row>[data-image-alt] {grid-column:1;}.studio-image-link-row>button {grid-column:2;grid-row:1/3;align-self:center;}.studio-image-link-row>.studio-image-row-error {grid-column:1/-1;}.studio-center #findPanel {margin:8px 10px 0;padding:10px;}.studio-center #findPanel input[type="text"] {flex:1;}.studio-focus .studio-modebar {padding:8px 10px;}.studio-exit-focus {left:10px;bottom:10px;}.studio-collection-actions .studio-icon-button {width:24px;min-width:24px;min-height:32px;}}
@media(prefers-reduced-motion:reduce){.studio-tree-chevron,.studio-exit-description {transition:none;}}

.studio-time-machine.modal-overlay {width:min(780px,calc(100vw - 24px));max-width:calc(100vw - 24px);}
.studio-time-machine .modal-panel {box-sizing:border-box;max-width:100%;}
.studio-image-asset>input:focus-visible {outline:2px solid var(--blue);outline-offset:2px;}
.studio-outline-branch>summary>.outline-entry {padding-left:5px;}

/* QA fixes: the overlay covers the viewport; only its panel has a width limit. */
.studio-time-machine.modal-overlay {inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;}
.studio-time-machine .modal-panel {width:min(760px,calc(100vw - 32px));max-width:calc(100vw - 32px);margin:0;flex:0 1 auto;}
.studio-small-dialog .studio-move-option {display:flex;align-items:flex-start;gap:12px;padding:13px 14px;margin:18px 0;border:1px solid var(--border);border-radius:9px;background:var(--bg-input);cursor:pointer;}
.studio-small-dialog .studio-move-option>input[type="checkbox"] {width:17px;height:17px;min-width:17px;flex:0 0 17px;margin:3px 0 0;padding:0;accent-color:var(--primary-bg);}
.studio-move-option>span {display:flex;flex-direction:column;gap:4px;}
.studio-move-option strong {font-size:12px;font-weight:600;}
.studio-move-option small {font-size:10px;line-height:1.7;color:var(--text-mute);}
.studio-file-list .studio-add-document {display:flex;align-items:center;gap:6px;padding:8px 5px;color:var(--text-mute);}
.studio-file-list .studio-add-document svg {width:14px;height:14px;flex-shrink:0;}

.studio-file-group.studio-collection>summary::before {content:none;}

.studio-brand-inactive {cursor:default;user-select:none;}

.studio-empty-workspace #studioFormattingTools {display:none;}
.studio-empty-workspace #previewHost:empty::before {content:'왼쪽에서 컬렉션과 문서를 추가하세요.';display:block;padding:48px 20px;color:var(--text-mute);font:13px/1.8 var(--sans);text-align:center;}
