/* Keep every Help item readable in both palettes. The shared .button rule is
   designed for the light marketing pages, so menu links need app-specific ink. */
.obsidian-app .help-menu{min-width:258px;gap:2px}
.obsidian-app .menu-list :is(button,a.button){display:flex;width:100%;min-height:39px;justify-content:flex-start;align-items:center;text-align:left;padding:9px 12px;border:0;border-radius:7px;background:transparent;color:#f6f0ea;font-size:13px;font-weight:600;line-height:1.25;box-shadow:none}
.obsidian-app .menu-list :is(button,a.button):hover,.obsidian-app .menu-list :is(button,a.button):focus-visible{background:#5b4430;color:#ffffff}
.obsidian-app .menu-divider{height:1px;margin:5px 8px;background:#594839}

/* A document-friendly light palette, scoped to the web editor. */
.obsidian-app.theme-light{--ink:#3b2c1e;--muted:#7a6654;--line:#e3d7cc;--soft:#f8f3ee;color:#3b2c1e;background:#f6f0eb;color-scheme:light}
.obsidian-app.theme-light .app-shell{background:#f6f0eb}
.obsidian-app.theme-light .app-header{background:linear-gradient(110deg,#ffffff,#f9f6f3);border-bottom-color:#e4d6c9;color:#3b2c1e}
.obsidian-app.theme-light .brand,.obsidian-app.theme-light .brand small{color:#523d2b}
.obsidian-app.theme-light .free-pill{color:#8b3920;background:#f6f1ec;border-color:#e5d3c4}
.obsidian-app.theme-light .doc-title{color:#705842}
.obsidian-app.theme-light .top-menu{background:#fdfbfa;border-bottom-color:#e3d7cc}
.obsidian-app.theme-light .top-menu>.tools-toggle,.obsidian-app.theme-light .menu>button{color:#513d2c}
.obsidian-app.theme-light .menu>button:hover,.obsidian-app.theme-light .menu.open>button{background:#f5eee8;color:#624933}
.obsidian-app.theme-light .menu-list{background:#ffffff;border-color:#e4b558;box-shadow:0 16px 42px #57412d29}
.obsidian-app.theme-light .menu-list :is(button,a.button){color:#4a3727}
.obsidian-app.theme-light .menu-list :is(button,a.button):hover,.obsidian-app.theme-light .menu-list :is(button,a.button):focus-visible{background:#f7f2ed;color:#5d4631}
.obsidian-app.theme-light .menu-divider{background:#eee3d9}
.obsidian-app.theme-light button,.obsidian-app.theme-light input,.obsidian-app.theme-light select,.obsidian-app.theme-light textarea{color:#513c2a;background:#ffffff;border-color:#e4d6c9}
.obsidian-app.theme-light button:hover{background:#f7f2ee;border-color:#e4b558}
.obsidian-app.theme-light .primary,.obsidian-app.theme-light .primary:hover{color:#ffffff;background:linear-gradient(110deg,#c2593c,#de7254);border-color:#c2593c}
.obsidian-app.theme-light .document-controls{color:#765b44}
.obsidian-app.theme-light .document-controls button,.obsidian-app.theme-light .document-controls input{background:#ffffff;border-color:#e2d2c4}
.obsidian-app.theme-light .control-divider{background:#e2d2c4}
.obsidian-app.theme-light .tool-sidebar,.obsidian-app.theme-light .rightbar{background:#fdfbfa;border-color:#e3d7cc}
.obsidian-app.theme-light .sidebar-head{color:#483626;border-bottom-color:#ede2d9}
.obsidian-app.theme-light .panel-tag{color:#933d22;border-color:#e4b558}
.obsidian-app.theme-light .tool-section-label,.obsidian-app.theme-light .rail-heading{color:#8c725c}
.obsidian-app.theme-light .tool-button{background:transparent;border-color:transparent;color:#604a37}
.obsidian-app.theme-light .tool-button>span{color:#a54427}
.obsidian-app.theme-light .tool-button:hover{background:#f6f0eb;color:#8b3920}
.obsidian-app.theme-light .tool-button.active{background:#f3eae3;border-color:#e4b558;color:#5b442f;box-shadow:inset 3px 0 #e4b558}
.obsidian-app.theme-light .sidebar-foot,.obsidian-app.theme-light .rail-empty{color:#917964}
.obsidian-app.theme-light .page-rail{background:#f8f4f1;border-color:#e3d7cc}
.obsidian-app.theme-light .rail-heading span{background:#f2e9e2;color:#923c22}
.obsidian-app.theme-light .page-thumbnail{color:#755940}
.obsidian-app.theme-light .page-thumbnail.active{background:#f3ece6;color:#82361f}
.obsidian-app.theme-light .stage{background-color:#f2ece6;background-image:radial-gradient(ellipse at 85% 5%,#e3d0c055,transparent 55%),radial-gradient(ellipse at 5% 90%,#d8755a40,transparent 50%);scrollbar-color:#d7c6b7 #f8f3ef}
.obsidian-app.theme-light.web-book-mode .stage{background-color:#704832;background-image:linear-gradient(90deg,#24130ab8,transparent 34px),repeating-linear-gradient(0deg,#ffffff0a 0 1px,transparent 1px 5px)}
.obsidian-app.theme-light .page-label{color:#7a6049}
.obsidian-app.theme-light .empty-state{background:linear-gradient(145deg,#ffffff,#fbf9f7);color:#433223;border-color:#e6d7ca;box-shadow:0 20px 60px #503b2925}
.obsidian-app.theme-light .empty-state h1{color:#433223}
.obsidian-app.theme-light .empty-state p{color:#806853}
.obsidian-app.theme-light .property-idle,.obsidian-app.theme-light .property-idle h3{color:#543f2d}
.obsidian-app.theme-light .property-idle p{color:#866c55}
.obsidian-app.theme-light .property-icon{background:#f6f1ec;border-color:#e4b558;color:#a54427}
.obsidian-app.theme-light .property-tip{border-top-color:#eee2d8}
.obsidian-app.theme-light .property-tip b{color:#903c22}
.obsidian-app.theme-light .workspace-status{background:#fcfaf8;border-top-color:#e7d9cc;color:#866c55}
.obsidian-app.theme-light .workspace-status>span:nth-child(2){color:#937255}
.obsidian-app.theme-light dialog{background:#ffffff;color:#493626;border-color:#e4b558;box-shadow:0 24px 70px #56402d55}
.obsidian-app.theme-light .dialog-card label,.obsidian-app.theme-light .dialog-note,.obsidian-app.theme-light .reader-settings p,.obsidian-app.theme-light .reader-settings label{color:#83674f}
.obsidian-app.theme-light .toast{background:#5f4732;color:#ffffff;border-color:#e4b558}
.obsidian-app.theme-light .placement-toolbar{background:transparent}
.obsidian-app.theme-light .placement-toolbar>b,.obsidian-app.theme-light .placement-toolbar label{color:#614832}
.obsidian-app.theme-light .web-search-bar{background:#ffffff;color:#4b3827;border-color:#e4b558;box-shadow:0 12px 30px #543f2c2b}
.obsidian-app.theme-light .web-search-bar input{background:#ffffff;color:#423122}

@media(max-width:600px){.obsidian-app .help-menu{min-width:min(258px,calc(100vw - 28px))}}

/* Warm paper changes workspace chrome and the reading surface, never PDF bytes. */
.obsidian-app.theme-warm{--ink:#493c2b;--muted:#70604a;--line:#d6c6ac;--soft:#f3e9d7;background:#f3e9d7;color:#493c2b}
.obsidian-app.theme-warm :is(.app-header,.top-menu,.tool-sidebar,.rightbar,.workspace-status,.page-rail){background:#f8f0e1;color:#493c2b;border-color:#d6c6ac}
.obsidian-app.theme-warm :is(.menu-list,dialog,.empty-state){background:#fff9ee;color:#493c2b;border-color:#d6c6ac}
.obsidian-app.theme-warm :is(input,select,textarea,button){background-color:#fffaf1;border-color:#d6c6ac;color:#493c2b}
.obsidian-app.theme-warm .tool-button{background:transparent}
.obsidian-app.theme-warm :is(.tool-button:hover,.menu-list button:hover,.menu-list a:hover){background:#efdfc4;color:#493c2b}
.obsidian-app.theme-warm:not(.web-book-mode) .stage{background:#e8dcc5;background-image:none}
.obsidian-app.theme-warm :is(.empty-state h1,.empty-state p,.property-idle,.property-idle h3,.property-idle p,.brand,.brand small,.doc-title,.sidebar-head,.tool-section-label,.rail-heading){color:#56452e}
.obsidian-app.theme-warm .primary{color:#ffffff;background:#b35940;border-color:#b35940}
.obsidian-app.theme-warm .web-search-bar{background:#fff9ee;color:#493c2b;border-color:#d6c6ac}

#compressProfile{display:block;width:100%;padding:10px;border-radius:7px;margin-top:8px}#compressStatus{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.compression-sizes{font-size:19px;font-weight:700}#compressDialog .dialog-actions{flex-wrap:wrap}

#toolkitDialog{max-height:90vh;overflow:auto}#toolkitForm{display:grid;gap:12px}#toolkitForm label{display:block;margin-bottom:6px}#toolkitForm input,#toolkitForm select{width:100%;padding:11px;border-radius:8px;border:1px solid var(--border,#897666);background:var(--panel,#ffffff);color:var(--text,#33261a)}.menu-list{max-height:75vh;overflow-y:auto}

/* PDF objects keep their document colours in every workspace theme. */
.obsidian-app .placed-overlay,.obsidian-app .placed-overlay:hover,.obsidian-app .placed-overlay:focus{background:transparent!important;box-shadow:none}
@media(max-width:850px){.obsidian-app .app-shell{grid-template-rows:64px auto minmax(0,1fr) auto}.obsidian-app .top-menu{height:auto;padding-bottom:6px}.obsidian-app .document-controls{display:flex;flex-basis:100%;justify-content:center;gap:5px;padding:4px 0}.obsidian-app .document-controls button{min-width:30px;padding:5px}.obsidian-app .workspace-status{min-height:28px;height:auto;gap:8px;padding:5px 10px;flex-wrap:wrap}.obsidian-app .workspace-status>span{min-width:0;overflow-wrap:anywhere}.obsidian-app .workspace-status>span:last-child{margin-left:auto;text-align:right;max-width:70%}.obsidian-app:not(.sidebar-hidden) .tool-sidebar{top:160px}}
.obsidian-app .placed-overlay{padding:0;font-weight:400;border-radius:0;border-color:transparent}

@media(max-width:850px){.obsidian-app .workspace{position:relative}.obsidian-app:not(.sidebar-hidden) .tool-sidebar{position:absolute;top:0;bottom:0}}
@media(max-width:850px){.obsidian-app .document-controls{background:transparent}.obsidian-app .document-controls :is(#prevPage,#nextPage,#zoomOut,#zoomIn,#zoomValue){display:inline-flex;align-items:center;justify-content:center}}

/* Text hit regions never paint over the PDF, regardless of workspace theme. */
.obsidian-app .text-edit-hit,.obsidian-app.theme-light .text-edit-hit,.obsidian-app.theme-warm .text-edit-hit{background:transparent!important;border-color:transparent!important;color:transparent!important;box-shadow:none!important;padding:0;border-radius:0}
.obsidian-app .text-edit-hit:hover,.obsidian-app .text-edit-hit:focus-visible{outline:1px solid #e4b558;outline-offset:1px}
.inline-text-box{position:absolute;z-index:14;outline:1px solid #a54427;border-radius:1px;background:white;min-width:30px}
.obsidian-app .inline-text-input,.obsidian-app.theme-light .inline-text-input{width:100%;height:100%;padding:0!important;margin:0;border:0!important;border-radius:0!important;outline:none!important;background:#ffffff!important;color:#000000;box-shadow:none;text-align:left;font-weight:normal;min-width:0}
.obsidian-app .inline-text-grip{position:absolute;left:-22px;top:0;width:18px;height:22px;padding:0;border:1px solid #e4b558;border-radius:4px;background:#fbf8f6;color:#a54427;cursor:grab;font-size:16px;line-height:18px}
.inline-text-grip:active{cursor:grabbing}
.placement-toolbar.inline-edit:not(.placed-text-edit) label:has(#placementOpacity),.placement-toolbar.inline-edit:not(.placed-text-edit) label:has(#placementRotation){display:none}
.placement-toolbar.inline-edit>span{font-size:11px}

.obsidian-app .stage{overflow-anchor:none}

.obsidian-app.theme-light .placement-toolbar.inline-edit>span{color:#7b6755}
/* Smart guides exist only during a near-aligned drag. */
.smart-alignment-guides{position:absolute;inset:0;pointer-events:none;z-index:16}
.smart-alignment-guides i{position:absolute;display:block;background:#b78068;box-shadow:0 0 0 .3px #ffffff77}
.smart-guide-x{width:1px}.smart-guide-y{height:1px}
@media print{.smart-alignment-guides{display:none!important}}

.guide-release{animation:guide-fade .9s ease-out forwards}@keyframes guide-fade{0%,65%{opacity:1}100%{opacity:0}}

.obsidian-app .inline-text-input{position:absolute;display:block;white-space:pre;overflow:visible;font-variant-ligatures:none;box-sizing:content-box;min-height:0;max-width:none}
.inline-text-box{min-width:0;background:transparent}

.inline-text-box.is-dragging,.inline-text-box.is-dragging .inline-text-input{cursor:grabbing;user-select:none}
/* Shared content placement: no banner; content itself is the drag surface. */
.obsidian-app .placement-box{border:1px solid #a54427;background:transparent;min-width:16px;min-height:16px;outline:0}
.obsidian-app .placement-box .placement-content{height:100%;padding:0;cursor:move}
.obsidian-app .placement-box .placement-content img{width:100%;height:100%;pointer-events:none;user-select:none}
.placement-drag{display:none!important}
.obsidian-app .inline-overlay{padding:0!important;border:0!important;outline:none;background:transparent!important;box-shadow:none!important;border-radius:0;min-width:0;min-height:0;display:block;overflow:visible;font-weight:400;transform-origin:2px 50%}
.saved-inline-text{position:absolute;display:block;white-space:pre;text-align:left;line-height:1.2;font-weight:400}
.inline-overlay:hover{outline:1px solid #a54427!important}
@media print{.placement-box,.inline-text-box{outline:none!important}}
/* Compact document workspace and familiar typography controls. */
.obsidian-app .app-shell{grid-template-rows:48px 44px minmax(0,1fr) 24px}
.obsidian-app .app-header{padding:0 14px;gap:18px;min-width:0}
.obsidian-app .brand{font-size:17px;flex-shrink:0;gap:8px}.obsidian-app .brand img{width:29px;height:29px}.obsidian-app .brand small{display:none}
.obsidian-app .doc-title{max-width:180px;font-size:11px;margin-left:auto;flex-shrink:1}
.text-ribbon{display:flex;gap:3px;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none;flex:1}
.obsidian-app .text-ribbon :is(button,select,input){height:29px;min-height:29px;margin:0;flex-shrink:0;border:1px solid transparent;border-radius:4px;font:13px 'Segoe UI',Arial,sans-serif;padding:3px 7px;box-shadow:none}
.obsidian-app .text-ribbon button{min-width:29px;background:transparent;cursor:pointer;color:inherit}
.obsidian-app .text-ribbon button:hover,.obsidian-app .text-ribbon button[aria-pressed=true]{background:#f4ede7;color:#86371f;border-color:#e4b558}
.obsidian-app .text-ribbon select{width:144px;border-color:var(--line)}.obsidian-app #formatSize{width:62px;border-color:var(--line)}.obsidian-app #formatColor{width:31px;padding:3px;cursor:pointer}
.ribbon-divider{height:20px;width:1px;background:var(--line);margin:0 6px;flex-shrink:0}
.align-icon{display:flex;flex-direction:column;gap:3px;width:17px}.align-icon i{display:block;height:1px;background:currentColor;width:100%}.align-icon i:nth-child(2){width:65%}.align-icon i:nth-child(3){width:85%}
[data-text-align=center] .align-icon{align-items:center}[data-text-align=right] .align-icon{align-items:flex-end}
.obsidian-app .top-menu{padding:0 10px}.obsidian-app .menu>button{height:30px;font-size:12px;padding:0 9px}.obsidian-app .menu-list{top:36px}
.obsidian-app .workspace{grid-template-columns:184px 96px minmax(0,1fr) 264px}.obsidian-app.sidebar-hidden .workspace{grid-template-columns:0 96px minmax(0,1fr) 264px}
.obsidian-app .rightbar{display:block!important;padding:14px 16px;position:relative;border-radius:0;min-width:0;box-shadow:none}
.obsidian-app .tool-button{min-height:38px;padding:9px 10px;font-size:12px}.obsidian-app .sidebar-head{min-height:42px;padding-top:9px;padding-bottom:9px}
.obsidian-app .page-thumbnail{padding:6px}.obsidian-app .page-thumbnail canvas{max-width:100%}
.obsidian-app .placement-toolbar{position:static;display:flex;flex-direction:column;align-items:stretch;gap:14px;width:auto;max-width:none;padding:18px 0;background:transparent;border:0;border-radius:0;box-shadow:none}
.obsidian-app .placement-toolbar label{display:flex;flex-direction:column;align-items:stretch;gap:7px;font-size:12px}.obsidian-app .placement-toolbar label input:not([type=checkbox]){width:100%;font-size:13px;min-height:32px;padding:7px 9px;border-radius:5px}.obsidian-app .placement-toolbar>span{max-width:none;line-height:1.5}
.obsidian-app .placement-toolbar.inline-edit #placementSizeLabel,.obsidian-app .placement-toolbar.inline-edit label:has(#placementColor){display:none}
.obsidian-app .placement-toolbar>b{font-size:15px}.obsidian-app .placement-toolbar>button{border-radius:5px;min-height:34px;font-size:13px;box-shadow:none}
.task-panel{padding:14px 0}.task-panel h3{font-size:15px;margin:0 0 18px}.task-panel label{display:block;font-size:12px;line-height:1.6;margin-bottom:8px}.task-panel input{width:100%;padding:9px;border:1px solid var(--line);border-radius:5px}.task-panel p{color:#b55237;font-size:12px}.task-actions{display:flex;gap:8px;margin-top:18px}.task-actions button{flex:1;font-size:13px;border-radius:5px}
.rightbar:has(.task-panel:not([hidden])) #propertyIdle{display:none}.rightbar:has(.task-panel:not([hidden])) .placement-toolbar{display:none}
.obsidian-app .workspace-status{font-size:10px;min-height:24px}.obsidian-app .tool-finder input{height:30px}
@media(max-width:1250px) and (min-width:851px){.obsidian-app .rightbar:has(.placement-toolbar:not([hidden])){position:relative;inset:auto;width:auto;z-index:auto;border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:none}.obsidian-app .workspace{grid-template-columns:170px 80px minmax(0,1fr) 242px}.obsidian-app.sidebar-hidden .workspace{grid-template-columns:0 80px minmax(0,1fr) 242px}.obsidian-app .doc-title{max-width:130px}}
@media(max-width:850px){.obsidian-app .app-shell{grid-template-rows:84px auto minmax(0,1fr) auto}.obsidian-app .app-header{flex-wrap:wrap;gap:4px 12px;padding:6px 10px}.text-ribbon{order:3;flex-basis:100%}.obsidian-app .doc-title{max-width:50%;order:2}.obsidian-app .workspace,.obsidian-app.sidebar-hidden .workspace{grid-template-columns:minmax(0,1fr)}.obsidian-app .rightbar{display:none!important}.obsidian-app .rightbar:has(.placement-toolbar:not([hidden])),.obsidian-app .rightbar:has(.task-panel:not([hidden])){display:block!important;position:fixed;inset:auto 0 26px auto;max-height:50vh;width:min(290px,50vw);z-index:35;border:1px solid var(--line);border-radius:6px 0 0 0;box-shadow:-5px -5px 20px #00000011}.obsidian-app:not(.sidebar-hidden) .tool-sidebar{top:180px}}
/* Every application tool is a docked inspector, never a screen-blocking modal. */
.obsidian-app .rightbar .docked-tool{position:relative;inset:auto;float:none;width:100%;min-width:0;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;box-shadow:none;overflow:visible;box-sizing:border-box}
.obsidian-app .rightbar .docked-tool:not([open]){display:none!important}.obsidian-app .rightbar .docked-tool[open]{display:block}
.obsidian-app .docked-tool::backdrop{display:none;background:none;backdrop-filter:none}
.obsidian-app .docked-tool .dialog-card{padding:18px 0 10px;width:100%;min-width:0;max-width:none;box-shadow:none;border:0;background:transparent;border-radius:0}
.obsidian-app .docked-tool :is(h2,h3){font-size:16px;line-height:1.35;margin:0 28px 16px 0;letter-spacing:-.02em}
.obsidian-app .docked-tool p,.obsidian-app .docked-tool .notice{font-size:12px;line-height:1.65;margin:10px 0 16px;color:var(--muted)}
.obsidian-app .docked-tool label{display:flex;flex-direction:column;gap:7px;margin:14px 0;font-size:12px;line-height:1.5}
.obsidian-app .docked-tool label:has(input[type=checkbox]){display:flex;flex-direction:row;align-items:flex-start;gap:8px}
.obsidian-app .docked-tool :is(input:not([type=checkbox]),select,textarea){width:100%;max-width:100%;min-width:0;padding:8px 9px;min-height:34px;border:1px solid var(--line);border-radius:5px;font:13px/1.5 'Segoe UI',sans-serif;box-sizing:border-box}
.obsidian-app .docked-tool textarea{min-height:170px;max-height:45vh;resize:vertical}.obsidian-app .docked-tool .compact-textarea{min-height:100px}
.obsidian-app .docked-tool .dialog-actions{display:flex;flex-direction:column;gap:8px;margin-top:18px;align-items:stretch}.obsidian-app .docked-tool .dialog-actions button{width:100%;min-height:34px;white-space:normal;font-size:12px;border-radius:5px;padding:8px 10px;box-shadow:none;line-height:1.5}
.obsidian-app .dock-close{position:absolute;top:12px;right:0;z-index:2;background:transparent;border:0;width:25px;min-height:25px;padding:0;font-size:21px;line-height:25px;border-radius:4px;box-shadow:none;color:var(--muted)}
.obsidian-app .docked-tool :is(video,.qr-preview img,.qr-preview svg,.qr-preview canvas){max-width:100%;height:auto}.obsidian-app .docked-tool video{max-height:180px}.obsidian-app .docked-tool .scan-options{display:flex;flex-direction:column;gap:0}.obsidian-app .docked-tool .scan-pages{grid-template-columns:minmax(0,1fr)}
.obsidian-app .docked-tool :is(#compressSizes,#compressStatus,#toolkitStatus){font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.obsidian-app .rightbar:has(.docked-tool[open]) :is(#propertyIdle,#taskPanel,#placementToolbar){display:none!important}
.obsidian-app.theme-light .docked-tool{--muted:#7e6c5c}
@media(max-width:850px){.obsidian-app .rightbar:has(.docked-tool[open]){display:block!important;position:fixed;inset:172px 0 26px auto;width:min(310px,65vw);max-height:none;z-index:35;border-left:1px solid var(--line);border-radius:0;box-shadow:-8px 0 24px #00000011}}
/* Phone workspace: fit documents to width and dock properties below the page. */
@media(max-width:850px){
.obsidian-app .app-shell{height:100dvh;min-height:0}.obsidian-app .top-menu{width:100%;gap:2px;align-content:center}.obsidian-app .top-menu>.menu>button{min-height:36px}.obsidian-app .document-controls button{min-height:34px}
.obsidian-app:not(.document-open) .app-shell{grid-template-rows:48px auto minmax(0,1fr) auto}.obsidian-app:not(.document-open) .app-header{flex-wrap:nowrap;padding-block:7px}.obsidian-app:not(.document-open) .text-ribbon,.obsidian-app:not(.document-open) .document-controls{display:none}
.obsidian-app .top-menu .menu-list{position:fixed;top:var(--workspace-top,190px);left:12px;right:12px;width:auto;max-height:55dvh;overflow:auto}.obsidian-app .tool-search-results{position:fixed;top:var(--workspace-top,190px);left:12px;right:12px;width:auto;max-height:55dvh;overflow:auto}
.obsidian-app:not(.sidebar-hidden) .tool-sidebar{top:var(--workspace-top,190px);bottom:30px;width:220px;z-index:34}.obsidian-app .tool-button{min-height:44px}.obsidian-app .stage,.obsidian-app .stage:has(.pdf-page){padding:16px;min-height:120px;overscroll-behavior:contain}.obsidian-app .page-stack{min-width:max-content;width:100%;align-items:center}.obsidian-app .pdf-page canvas{max-width:none!important;height:auto!important}.obsidian-app .pdf-page{max-width:none!important}.obsidian-app .inline-text-box,.obsidian-app .text-edit-hit{touch-action:none}
.obsidian-app .workspace{grid-template-rows:minmax(0,1fr) auto}.obsidian-app .stage{grid-row:1;grid-column:1}.obsidian-app .rightbar:has(.placement-toolbar:not([hidden])),.obsidian-app .rightbar:has(.task-panel:not([hidden])),.obsidian-app .rightbar:has(.docked-tool[open]){position:static!important;inset:auto!important;width:100%!important;max-height:42dvh;min-height:0;grid-column:1;grid-row:2;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:0 -3px 15px #4634240a;padding:10px 16px;overflow:auto;z-index:20}
.obsidian-app .rightbar .sidebar-head{min-height:28px;padding:2px 0 8px;margin-bottom:4px}.obsidian-app .docked-tool .dialog-card,.obsidian-app .placement-toolbar{padding-top:10px}.obsidian-app .docked-tool :is(h2,h3){font-size:15px;margin-bottom:10px}.obsidian-app .docked-tool p{margin:8px 0 10px}.obsidian-app .docked-tool label{margin:10px 0}.obsidian-app .docked-tool .dialog-actions{margin-top:12px;flex-direction:row;flex-wrap:wrap}.obsidian-app .docked-tool .dialog-actions button{flex:1 1 100px;min-height:42px}.obsidian-app .docked-tool input,.obsidian-app .docked-tool select{min-height:42px}.obsidian-app .placement-toolbar>button{min-height:42px}.obsidian-app .dock-close{top:5px;width:32px;min-height:32px}
.obsidian-app .empty-state{margin:16px auto;padding:25px 20px}.obsidian-app .empty-state h1{font-size:30px}.obsidian-app .empty-state p{font-size:14px}.obsidian-app .empty-state img{width:48px;height:48px}.obsidian-app .welcome-kicker{margin:17px 0 10px}.obsidian-app .empty-actions button{min-height:44px}.obsidian-app .workspace-status{min-height:27px;max-height:46px;padding:5px 10px}
}
.tool-details{font-size:12px;margin-top:12px;color:var(--muted)}.tool-details summary{cursor:pointer;padding:5px 0;font-weight:600}.tool-details p{margin-top:7px}
@media(max-width:850px){.obsidian-app .stage{scrollbar-gutter:stable}.obsidian-app .rightbar .docked-tool .dialog-actions{position:sticky;bottom:-10px;z-index:3;background:var(--soft);border-top:1px solid var(--line);padding:8px 0;margin-bottom:0}.obsidian-app.theme-light .rightbar .docked-tool .dialog-actions{background:#fcf9f7}.obsidian-app .rightbar #compressStatus{font-size:11px;line-height:1.45}.obsidian-app .docked-tool .dialog-actions button{font-size:11px;flex:1 1 90px}.obsidian-app .text-ribbon{scrollbar-width:thin}.obsidian-app .text-ribbon :is(button,select,input){min-height:34px;height:34px}}

.stacking-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:0;padding:12px 0}.stacking-controls legend{font-weight:600;margin-bottom:8px}.stacking-controls button{font-size:12px;min-height:36px}.inline-edit:not(.placed-text-edit) .stacking-controls{display:none}

.inspection-report{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto;background:var(--surface,#fbf8f5);padding:12px;border-radius:8px}#advancedControls textarea{width:100%;box-sizing:border-box}#advancedControls label,#createPdfDialog label{display:grid;gap:6px;margin:12px 0}#advancedControls input[type=checkbox]{width:auto}#advancedControls fieldset label{display:flex;align-items:center}

.obsidian-app .menu-list{max-height:calc(100dvh - var(--workspace-top,100px) - 20px);overflow-y:auto;overscroll-behavior:contain}

.category-tabs{display:flex;align-items:stretch;gap:2px;min-width:0}.category-tabs .menu{display:flex}.category-tabs [role=tab]{border-radius:6px 6px 0 0;white-space:nowrap}.category-tabs [role=tab][aria-selected=true]{color:#ae482c!important;background:#d8755a!important;box-shadow:inset 0 -3px #cc5d3e}.obsidian-app .tool-sidebar .tool-category-panel{position:static;display:grid;gap:4px;min-width:0;width:100%;max-height:none;box-shadow:none;border:0;border-radius:0;background:transparent;padding:8px 0;overflow:visible}.tool-category-panel[hidden]{display:none!important}.obsidian-app .tool-sidebar .tool-category-panel :is(button,a.button){display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:42px;padding:10px 12px;text-align:left;white-space:normal;background:transparent;color:inherit;border:0;border-radius:7px;box-shadow:none;font-size:13px;font-weight:500;line-height:1.45;text-decoration:none}.obsidian-app .tool-sidebar .tool-category-panel :is(button,a.button):hover{background:#e4b5581a}.obsidian-app .tool-sidebar .tool-category-panel .active{background:#e4b55824;box-shadow:inset 3px 0 #e4b558}.tool-sidebar .sidebar-head{position:sticky;top:0;background:inherit;z-index:1}.tool-sidebar{overflow-y:auto}
@media(max-width:1100px){.category-tabs{overflow-x:auto;max-width:100%;flex-shrink:1;scrollbar-width:thin}.category-tabs [role=tab]{font-size:12px;padding:9px}}
@media(max-width:850px){.category-tabs{order:2;flex:1 0 100%;width:100%;overflow-x:auto;padding-bottom:3px}.top-menu .document-controls{order:3}.category-tabs [role=tab]{min-height:42px;padding:10px 13px}.tool-sidebar .tool-category-panel :is(button,a.button){min-height:44px}}

@media(max-width:850px){.obsidian-app:not(.sidebar-hidden) .tool-sidebar{display:block;position:fixed;left:0;top:var(--workspace-top,150px);bottom:27px;width:min(82vw,280px);visibility:visible;transform:translateX(0);z-index:34;box-shadow:12px 0 24px #42312318}.obsidian-app.sidebar-hidden .tool-sidebar{visibility:hidden;transform:translateX(-105%)}}

.obsidian-app .app-shell{grid-template-columns:minmax(0,1fr)}.obsidian-app .app-header,.obsidian-app .top-menu,.obsidian-app .workspace{min-width:0}
@media(max-width:850px){.obsidian-app .top-menu{box-sizing:border-box;min-width:0}.category-tabs{box-sizing:border-box;min-width:0;flex-basis:100%;max-width:100%;width:100%}.obsidian-app .tool-finder{min-width:0}}

.obsidian-app .app-header .brand{flex-shrink:0}.obsidian-app .app-header .brand .brand-lockup{width:132px;height:42px;max-width:none;object-fit:contain;background:#2a2622;padding:2px 5px;border-radius:6px}.obsidian-app .empty-state img.welcome-brand{width:170px;height:100px;object-fit:contain;border-radius:0;background:transparent;padding:0}@media(max-width:850px){.obsidian-app .app-header .brand .brand-lockup{width:126px;height:34px}.obsidian-app:not(.document-open) .app-header .brand .brand-lockup{height:34px}}

#batchDrop{border:2px dashed #b9987b;border-radius:10px;padding:18px 12px;margin:14px 0;text-align:center;cursor:pointer;background:#e4b5580b}#batchDrop.drag-active{border-color:#cc5d3e;background:#cc5d3e12}#batchSettings{border:0;padding:0;min-width:0}#batchSettings label,#vaultForm label,#profileDialog label{display:grid;gap:6px;margin:12px 0}#batchSettings label:has(input[type=checkbox]),#profileDialog label:has(input[type=checkbox]){display:flex;gap:8px;align-items:center}#batchSettings input[type=checkbox],#profileDialog input[type=checkbox]{width:auto;min-height:0}#batchQueue{padding-left:20px;max-height:230px;overflow:auto;font-size:12px}#batchQueue li{margin:9px 0;overflow-wrap:anywhere}#batchQueue li span{display:block;color:var(--muted)}.vault-item{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid var(--line);border-radius:10px;margin:12px 0;padding:12px}.vault-item img{width:100%;height:90px;object-fit:contain;grid-column:1/-1;background:repeating-conic-gradient(#ede6e0 0 25%,#ffffff 0 50%) 0/14px 14px;border-radius:6px}.vault-item strong,.vault-item small{grid-column:1/-1;overflow-wrap:anywhere}#profileMatches{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}#profileMatches select{width:100%}#profileDialog textarea,#batchDialog textarea{width:100%;box-sizing:border-box}#profileDialog small,#batchDialog small{font-size:11px;line-height:1.5;color:var(--muted)}

.local-storage-notice{padding:10px 12px;margin:12px 0;border:1px solid currentColor;border-radius:8px}.local-storage-notice p{font-size:12px;line-height:1.6;margin:0 0 8px}.local-storage-notice button{font-size:12px;width:100%}

/* Completion pass: readable active tabs, local recovery and touch-sized controls. */
.category-tabs [role=tab][aria-selected=true]{color:#fff!important;background:#a44427!important}
#recoveryButton{flex-shrink:0;font-size:12px;min-height:36px}.recovery-version{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.recovery-version strong,.recovery-version small{grid-column:1/-1;overflow-wrap:anywhere}
@media(max-width:850px){.obsidian-app .rightbar{max-height:52dvh!important;overscroll-behavior:contain}.obsidian-app .rightbar :is(button,input,select){min-height:44px}.obsidian-app .rightbar .dialog-actions{gap:8px}.obsidian-app .stage{touch-action:pan-x pan-y}.obsidian-app .app-header #recoveryButton{font-size:11px;min-height:36px}.obsidian-app .workspace-status{font-size:10px}.obsidian-app .app-header{flex-wrap:wrap}.obsidian-app .app-header .text-ribbon{flex:1 1 100%;order:3}.obsidian-app .rightbar:has(.docked-tool[open]),.obsidian-app .rightbar:has(#placementToolbar:not([hidden])),.obsidian-app .rightbar:has(#taskPanel:not([hidden])){display:block!important;position:fixed!important;bottom:28px!important;top:auto!important;left:0!important;right:0!important;width:100%!important;box-sizing:border-box;border-top:1px solid var(--line);box-shadow:0 -6px 24px #0002;z-index:35}.obsidian-app .rightbar .sidebar-head{display:none}.obsidian-app .rightbar .dialog-card{padding:12px}.obsidian-app .rightbar .dialog-card h2{font-size:18px;margin:8px 35px 10px 0}.obsidian-app .rightbar .dialog-card p{font-size:12px}.obsidian-app .rightbar #propertyIdle{display:none}}

.form-geometry{display:grid;grid-template-columns:1fr 1fr;gap:8px}#formDesigner label{display:grid;gap:5px;margin:10px 0}#formDesigner label:has(input[type=checkbox]){display:flex;align-items:center}#formDesigner input[type=checkbox]{width:auto;min-height:0}

#certificateDialog label{display:grid;gap:6px;margin:12px 0}#certificateResult{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 system-ui}

#interfaceLanguage{max-width:110px;min-height:36px;font-size:12px}#archiveExport label{display:grid;gap:6px;margin:12px 0}

/* A real corner control owns resize gestures; CSS native resize competes with dragging. */
.obsidian-app .placement-box{resize:none;touch-action:none;box-sizing:border-box}
.placement-resize{position:absolute!important;right:0;bottom:0;width:24px!important;height:24px!important;min-width:0!important;min-height:0!important;padding:0!important;border:0!important;border-radius:2px!important;background:linear-gradient(135deg,transparent 35%,#fff 36%)!important;cursor:nwse-resize!important;touch-action:none;z-index:25;box-shadow:none!important}
.placement-resize::after{content:"";position:absolute;right:4px;bottom:4px;width:9px;height:9px;border-right:2px solid #a54427;border-bottom:2px solid #a54427}
.placement-resize:focus-visible{outline:2px solid #a54427;outline-offset:2px}
.inline-text-box>.placement-resize{right:-10px;bottom:-10px;width:20px!important;height:20px!important}
.is-resizing,.is-resizing *{user-select:none!important}
@media(pointer:coarse){.placement-resize{width:32px!important;height:32px!important}}
