/* Desktop-only docking. Content stays mounted while panel geometry changes. */
#snail-reader.sd-enabled{grid-template-rows:auto auto minmax(0,1fr)}
.sd-enabled>.sr-menubar{position:relative;z-index:60;border-bottom:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line);background:var(--sr-panel);min-height:calc(30px * var(--sr-ui-scale, 1));padding-inline:calc(8px * var(--sr-ui-scale, 1));overflow:visible}
.sd-host{position:relative;min-height:0;min-width:0;overflow:hidden;background:var(--sr-line);isolation:isolate}
.sd-panel{position:absolute;overflow:hidden;min-width:0;min-height:0;background:var(--sr-panel);container-type:inline-size}
.sd-panel>*{width:100%;height:100%;min-width:0;min-height:0;margin:0}
.sd-panel.is-floating{border:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line);border-top:0;box-shadow:0 8px 26px #10212c30}
.sd-decorations{display:contents}
.sd-panel-head{position:absolute;display:flex;align-items:stretch;justify-content:space-between;gap:calc(6px * var(--sr-ui-scale, 1));background:var(--sr-soft);border-bottom:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line);user-select:none;touch-action:none;color:var(--sr-muted);font-size:calc(11px * var(--sr-ui-scale, 1))}
.sd-panel-head.is-floating{background:var(--sr-accent-soft);border:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line)}
.sd-panel-tabs{display:flex;min-width:0;overflow:hidden;align-items:stretch}
.sd-panel-head button{border:0;background:none;border-radius:0;color:inherit;line-height:1;min-height:0;font-size:inherit}
.sd-panel-tabs button{position:relative;padding:0 calc(13px * var(--sr-ui-scale, 1));white-space:nowrap;cursor:grab}
.sd-panel-tabs button[aria-selected=true]{color:var(--sr-ink);background:transparent;box-shadow:none}
.sd-panel-tabs button[aria-selected=true]:after{content:'';position:absolute;left:calc(9px * var(--sr-ui-scale,1));right:calc(9px * var(--sr-ui-scale,1));bottom:0;height:calc(1px * var(--sr-ui-scale,1));background:var(--sr-accent)}
.sd-panel-tabs button:hover{color:var(--sr-ink);background:color-mix(in srgb,var(--sr-ink) 4%,transparent)}
.sd-panel-actions{display:flex;flex-shrink:0;align-items:stretch;align-self:stretch;gap:0;padding:0 calc(3px * var(--sr-ui-scale, 1)) 0 0}
#snail-reader .sd-panel-actions button{display:grid;place-items:center;flex:0 0 calc(24px * var(--sr-ui-scale, 1));width:calc(24px * var(--sr-ui-scale, 1));height:100%;min-width:0;min-height:0;margin:0;padding:0;line-height:0;box-sizing:border-box;cursor:pointer}
#snail-reader .sd-panel-actions button svg{display:block;width:calc(14px * var(--sr-ui-scale, 1));height:calc(14px * var(--sr-ui-scale, 1));margin:0;pointer-events:none;flex:none}
.sd-panel-actions button:hover{background:var(--sr-accent-soft);color:var(--sr-ink)}
.sd-splitter{position:absolute;z-index:6;background:transparent;touch-action:none}
.sd-splitter.row{cursor:col-resize}.sd-splitter.column{cursor:row-resize}
.sd-splitter:hover,.sd-splitter:focus{background:var(--sr-accent);outline:0}
.sd-float-resize{position:absolute;z-index:58;border:0;background:linear-gradient(135deg,transparent 50%,var(--sr-muted) 51%,transparent 58%,transparent 68%,var(--sr-muted) 69%,transparent 76%);cursor:nwse-resize;padding:0;touch-action:none}
.sd-drop-preview{position:absolute;z-index:90;pointer-events:none;background:#69baff;border-radius:1px;box-shadow:0 0 3px #c3e8ff,0 0 10px 2px #368eff80;box-sizing:border-box}
.sd-drop-preview:after{content:'';position:absolute;pointer-events:none}
.sd-drop-preview[data-edge=left]:after{inset:-2px -14px -2px 0;background:linear-gradient(90deg,#459dff3b,transparent);border-left:1px solid #d6efff}
.sd-drop-preview[data-edge=right]:after{inset:-2px 0 -2px -14px;background:linear-gradient(270deg,#459dff3b,transparent);border-right:1px solid #d6efff}
.sd-drop-preview[data-edge=top]:after{inset:0 -2px -14px;background:linear-gradient(#459dff3b,transparent);border-top:1px solid #d6efff}
.sd-drop-preview[data-edge=bottom]:after{inset:-14px -2px 0;background:linear-gradient(0deg,#459dff3b,transparent);border-bottom:1px solid #d6efff}
.sd-drop-preview[data-edge=center]{display:flex;align-items:center;justify-content:center;background:#153a59f0;color:#e0f2ff;box-shadow:0 0 8px #348dff70,inset 0 -2px #88cdff;border:1px solid #72baff;border-radius:2px 2px 0 0;font:400 calc(11px * var(--sr-ui-scale,1))/1 system-ui}
.sd-drop-preview[data-edge=center] span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 calc(8px * var(--sr-ui-scale,1))}
.sd-drop-preview[data-edge=float]{background:transparent;border:1px solid #b5c4d48a;box-shadow:0 4px 18px #0002;border-radius:2px}
.sd-drop-preview i{position:absolute;top:-2px;bottom:-2px;width:2px;background:#e1f4ff;box-shadow:0 0 4px #50aaff}
.sd-drop-preview i:before,.sd-drop-preview i:after{content:'';position:absolute;left:-2px;width:6px;height:2px;background:#e1f4ff}.sd-drop-preview i:before{top:0}.sd-drop-preview i:after{bottom:0}
.sd-drag-tab{position:absolute;z-index:95;box-sizing:border-box;pointer-events:none;display:flex;align-items:center;gap:8px;height:calc(28px * var(--sr-ui-scale,1));padding:0 calc(10px * var(--sr-ui-scale,1));background:var(--sr-panel);color:var(--sr-ink);border:1px solid var(--sr-muted);border-radius:2px;box-shadow:0 5px 14px #0005;font:400 calc(11px * var(--sr-ui-scale,1))/1 system-ui;white-space:nowrap}
.sd-drag-tab:before{content:'';width:calc(9px * var(--sr-ui-scale,1));height:calc(9px * var(--sr-ui-scale,1));border:1px solid currentColor;border-top:3px solid currentColor;opacity:.7;flex-shrink:0}
.sd-drag-tab[hidden],.sd-drop-preview[hidden]{display:none}
.sd-host.is-dragging .sd-panel-head,.sd-host.is-dragging .sd-moving{transition:none!important}.sd-host.is-dragging .sd-moving{pointer-events:none}
.sd-drag-shield{position:fixed;inset:0;z-index:9998;cursor:grabbing;user-select:none;touch-action:none}
.sd-remote{position:absolute;z-index:3;border:calc(1px * var(--sr-ui-scale, 1)) dashed var(--sr-line);background:var(--sr-panel);color:var(--sr-muted);padding:calc(20px * var(--sr-ui-scale, 1))}
.sd-empty{position:absolute;inset:30%;border:calc(1px * var(--sr-ui-scale, 1)) dashed var(--sr-muted);background:var(--sr-bg);color:var(--sr-ink)}
.sd-menu{min-width:calc(200px * var(--sr-ui-scale, 1))}.sd-menu button{display:flex;gap:calc(10px * var(--sr-ui-scale, 1));align-items:center;width:100%}.sd-menu button span{width:calc(12px * var(--sr-ui-scale, 1))}
.sd-menu hr{border:0;border-top:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line);margin:calc(5px * var(--sr-ui-scale, 1))}
.sd-layout-menu{position:relative}.sd-layout-menu>summary{display:flex!important;justify-content:space-between;align-items:center;padding:calc(9px * var(--sr-ui-scale, 1)) calc(13px * var(--sr-ui-scale, 1));cursor:pointer;list-style:none}
.sd-layout-menu>summary:hover{background:var(--sr-accent-soft)}
.sd-layout-menu>.sr-menu-pop{left:100%;top:calc(-5px * var(--sr-ui-scale, 1));min-width:calc(210px * var(--sr-ui-scale, 1));z-index:90}
.sd-enabled .sr-reader{display:grid;grid-template-rows:minmax(0,1fr) auto;position:relative;overflow:hidden}
#snail-reader.sd-enabled .sr-editor-toolbar{display:none}
.sd-enabled .sr-reader.with-panel .sr-viewport{margin-right:0}
.sd-enabled .sd-panel>.sr-side-panel{position:static;width:100%;height:100%;padding:calc(12px * var(--sr-ui-scale, 1));border:0;overflow:auto}
.sd-enabled .sd-panel>.sr-side-panel header h2{font-size:calc(14px * var(--sr-ui-scale, 1))}.sd-enabled .sd-panel>.sr-side-panel header button{display:none}
.sd-enabled .sd-panel>.sr-toolstrip{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:center;padding:calc(5px * var(--sr-ui-scale, 1)) calc(10px * var(--sr-ui-scale, 1));overflow:auto;gap:calc(4px * var(--sr-ui-scale, 1));height:100%;border:0}
.sd-enabled .sd-panel>.sr-personal{max-width:none;overflow:auto}
.sd-enabled .sr-library{padding:calc(12px * var(--sr-ui-scale, 1))}.sd-enabled .sr-library-head{padding:0 0 calc(10px * var(--sr-ui-scale, 1));gap:calc(10px * var(--sr-ui-scale, 1));flex-wrap:wrap}.sd-enabled .sr-library-head h1{font-size:calc(24px * var(--sr-ui-scale, 1))}.sd-enabled .sr-library-head p{margin:0}.sd-enabled .sr-library-head .sr-eyebrow{display:none}
.sd-enabled .sr-library-tools{flex-wrap:wrap;justify-content:flex-start}.sd-enabled .sr-books{grid-template-columns:repeat(auto-fill,minmax(calc(180px * var(--sr-ui-scale, 1)),1fr));padding:calc(10px * var(--sr-ui-scale, 1));gap:calc(10px * var(--sr-ui-scale, 1))}
.sd-enabled .sr-library-layout{grid-template-columns:calc(140px * var(--sr-ui-scale, 1)) minmax(0,1fr)}.sd-enabled .sr-library-search{flex-wrap:wrap;gap:calc(8px * var(--sr-ui-scale, 1));padding-block:calc(8px * var(--sr-ui-scale, 1))}
.sd-enabled .sr-library-search input{min-width:calc(100px * var(--sr-ui-scale, 1));flex:1}
.sd-enabled .sr-reading-bottom{gap:calc(4px * var(--sr-ui-scale, 1));flex-wrap:nowrap;overflow-x:auto;min-width:0}.sd-enabled .sr-reading-channels{flex-shrink:1;min-width:calc(80px * var(--sr-ui-scale, 1));overflow-x:auto}.sd-enabled .sr-reading-channels button{flex-shrink:0}
.sd-enabled .sr-dock .sr-page-jump input{width:calc(42px * var(--sr-ui-scale, 1))}
.sd-enabled .sr-header-actions>[data-action=workspaces]{display:none}
.sd-enabled .sr-bottom-nav{display:none}
@container(max-width:540px){.sd-panel .sr-library-layout{grid-template-columns:calc(105px * var(--sr-ui-scale, 1)) minmax(0,1fr)}.sd-panel .sr-library-head>div>p{display:none}.sd-panel .sr-books{grid-template-columns:repeat(auto-fill,minmax(calc(140px * var(--sr-ui-scale, 1)),1fr))}.sd-panel .sr-library-tools .sr-button{padding:calc(5px * var(--sr-ui-scale, 1)) calc(7px * var(--sr-ui-scale, 1))}.sd-panel .sr-prev span,.sd-panel .sr-next span{display:none}.sd-panel .sr-reading-channels button{font-size:calc(11px * var(--sr-ui-scale, 1));padding:calc(5px * var(--sr-ui-scale, 1))}.sd-panel .sr-canvas-head{flex-wrap:wrap}.sd-panel .sr-canvas-mark{display:none}.sd-panel .sr-canvas-head select{max-width:100%}}
#snail-reader.sd-popout-root{display:grid;grid-template-rows:auto minmax(0,1fr);padding:0}
.sd-popout-heading{display:flex;align-items:center;justify-content:space-between;padding:calc(10px * var(--sr-ui-scale, 1)) calc(15px * var(--sr-ui-scale, 1));border-bottom:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line);background:var(--sr-soft);font-size:calc(12px * var(--sr-ui-scale, 1))}
.sd-popout-heading button{padding:calc(5px * var(--sr-ui-scale, 1)) calc(10px * var(--sr-ui-scale, 1));border:calc(1px * var(--sr-ui-scale, 1)) solid var(--sr-line);background:var(--sr-panel);color:var(--sr-ink)}
.sd-popout-content{min-height:0;overflow:auto}.sd-popout-content>.sr-library{height:100%;padding:calc(15px * var(--sr-ui-scale, 1))}.sd-popout-content>.sr-side-panel{position:static;width:100%;height:100%}.sd-popout-content>.sr-toolstrip{display:flex;flex-wrap:wrap;overflow:visible}.sd-popout-content>.sr-personal{display:block;height:100%;overflow:auto}
.sd-panel-head{cursor:grab}.sd-panel-tabs button{min-width:0;overflow:hidden;text-overflow:ellipsis}
.sd-panel-head.is-narrow{gap:0}.sd-panel-head.is-narrow .sd-panel-tabs button{padding-inline:calc(5px * var(--sr-ui-scale, 1))}.sd-panel-head.is-narrow .sd-panel-actions{padding:0}#snail-reader .sd-panel-head.is-narrow .sd-panel-actions button{width:calc(20px * var(--sr-ui-scale, 1));flex-basis:calc(20px * var(--sr-ui-scale, 1))}
.sd-resize{position:absolute;touch-action:none;background:transparent}
.sd-resize-n,.sd-resize-s{cursor:ns-resize}.sd-resize-w,.sd-resize-e{cursor:ew-resize}
.sd-resize-nw,.sd-resize-se{cursor:nwse-resize}.sd-resize-ne,.sd-resize-sw{cursor:nesw-resize}
.sd-resize:hover{background:color-mix(in srgb,var(--sr-accent) 40%,transparent)}
#snail-reader.sd-enabled .sd-panel>.sr-toolstrip{padding:calc(2px * var(--sr-ui-scale, 1)) calc(4px * var(--sr-ui-scale, 1));gap:calc(3px * var(--sr-ui-scale, 1));flex-wrap:nowrap;overflow:auto;align-content:start;scrollbar-width:none}
#snail-reader.sd-enabled .sd-panel.is-vertical-tools>.sr-toolstrip{flex-wrap:wrap;justify-content:center;align-items:start;align-content:start;padding:calc(3px * var(--sr-ui-scale, 1));overflow:auto;overflow-x:hidden;scrollbar-width:thin}
#snail-reader.sd-enabled .sd-panel.is-vertical-tools .sr-toolstrip button span{display:none}
#snail-reader.sd-enabled .sd-panel.is-vertical-tools .sr-toolstrip button{min-width:calc(30px * var(--sr-ui-scale, 1));min-height:var(--tool-height);padding:calc(3px * var(--sr-ui-scale, 1))}
#snail-reader.sd-enabled .sd-panel.is-vertical-tools .sr-toolstrip>i{width:100%;height:calc(1px * var(--sr-ui-scale, 1))}
#snail-reader.sd-enabled .sd-panel.is-vertical-tools .sr-toolstrip>select{width:100%;min-width:0;padding:calc(2px * var(--sr-ui-scale, 1))}
.sd-workspace-quick{margin-left:auto;display:flex;align-items:stretch;gap:calc(2px * var(--sr-ui-scale, 1));min-width:0;overflow:auto;scrollbar-width:none;align-self:stretch}
.sd-workspace-quick[hidden]{display:none}
.sd-workspace-quick [data-layout][hidden],.sd-layout-menu [data-layout][hidden]{display:none!important}
#snail-reader .sd-workspace-quick button{padding:calc(4px * var(--sr-ui-scale, 1)) calc(12px * var(--sr-ui-scale, 1));min-height:calc(26px * var(--sr-ui-scale, 1));font:400 calc(12px * var(--sr-ui-scale, 1))/1.4 system-ui;color:var(--sr-muted);background:transparent;border:0;border-bottom:calc(2px * var(--sr-ui-scale, 1)) solid transparent;border-radius:0;white-space:nowrap}
#snail-reader .sd-workspace-quick button[aria-pressed=true]{color:var(--sr-ink);border-bottom-color:var(--sr-accent);background:var(--sr-accent-soft)}
.sd-workspace-quick button:hover{background:var(--sr-soft)}
@media(max-width:720px){#snail-reader .sd-workspace-quick button{padding-inline:calc(5px * var(--sr-ui-scale, 1))}}
