.folio-quick-menu{position:fixed;z-index:1000;width:min(320px,calc(100vw - 16px));max-height:80vh;overflow:auto;background:#fffaf6;color:#342b28;border:1px solid #ddc6bb;border-radius:12px;box-shadow:0 12px 50px #29150e33;font:13px/1.4 Arial,sans-serif}.folio-quick-menu header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #e8d9cf;font-weight:bold}.folio-quick-menu button{font:inherit;cursor:pointer;color:inherit;background:#fff;border:1px solid #e5d6ce;border-radius:6px;padding:8px;min-height:42px}.folio-quick-menu header button{border:0;background:transparent;min-width:36px}.folio-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:10px}.folio-quick-menu button:hover,.folio-quick-menu button[aria-pressed=true]{background:#ffeae3;color:#a91414}.folio-quick-menu button:focus-visible{outline:2px solid #c12620}.folio-quick-menu button:disabled{opacity:.4;cursor:default}.header-history{display:flex;gap:4px}.header-history button{min-width:34px}.header-font{max-width:145px;font-size:11px;padding:6px;border:1px solid #e2d5ce;border-radius:5px;background:white}.writer-pen-tools{display:flex;align-items:center;gap:6px}.writer-pen-tools select{max-width:100px}.writer-audio-card{position:absolute;box-sizing:border-box;z-index:3;pointer-events:auto;touch-action:none;background:#fff7f3;border:1px solid #e5b9a6;border-radius:7px;padding:6px;overflow:hidden;line-height:1.25;cursor:grab}.writer-audio-card audio{display:block;width:100%;height:30px;touch-action:manipulation}.writer-audio-title{font-weight:bold;font-family:Arial,sans-serif;outline:none;cursor:text;min-height:1em}.writer-audio-transcript{font-family:Arial,sans-serif;color:#6b5145;outline:none;min-height:1em;white-space:pre-wrap;overflow:auto;max-height:50%;cursor:text}.writer-audio-transcript:empty:before{content:'Add a transcript or listening notes…';color:#947c6f}.writer-audio-card:focus-within{border-color:#c12620}.pdf-audio-player{position:absolute;pointer-events:auto;z-index:18;display:flex;align-items:center;gap:5px;background:#fffaf5;border:1px solid #e5b9a6;border-radius:6px;padding:3px;box-sizing:border-box}.pdf-audio-player audio{width:100%;height:30px;min-width:0}.pdf-audio-player button{padding:4px;border:0;background:transparent;color:#a91414}.writer-font-chooser input[type=search]{width:100%;box-sizing:border-box}.writer-font-chooser select{width:100%;font-size:15px;padding:10px;margin:10px 0}.writer-font-sample{padding:16px;border:1px solid #e4d6cb;font-size:24px;line-height:1.5;overflow-wrap:anywhere}.writer-audio-hint{font-size:10px;color:#8d7162;line-height:1.4}@media(max-width:760px){.app-header .header-history{display:flex}.header-history .icon-btn{width:30px;min-width:30px}.header-font{max-width:100px}.writer-header .writer-history{display:flex}.writer-pen-tools input[type=color]{width:34px;min-height:30px}.folio-quick-grid button{min-height:46px}}

.writer-history{display:flex;gap:4px}.writer-pen-tools label{font-size:10px;display:flex;align-items:center;gap:4px}.writer-pen-tools input[type=color]{width:30px;height:28px;padding:2px;border:1px solid #dbc9bf;border-radius:5px}.viewer-toolbar{gap:6px;overflow-x:auto;flex-shrink:0}.viewer-toolbar>.writer-pen-tools{flex-shrink:0}.app-header .header-history .icon-btn{min-height:34px}.writer-audio-card{touch-action:pan-y}.writer-audio-card[data-wdragblock]{touch-action:none}.inline-edit-toolbar select{max-width:160px}.inline-edit-toolbar{flex-wrap:wrap}.writer-font-chooser{max-width:340px}
@media(max-width:760px){.app-header{flex-wrap:wrap;height:auto;min-height:65px;padding-top:8px;padding-bottom:8px;row-gap:7px}.app-header .document-title,.app-header .inline-version{display:none}.app-header .header-actions{gap:4px;min-width:0}.header-font{max-width:92px}.writer-header{flex-wrap:wrap;gap:5px}.writer-history .writer-btn{padding:5px 7px}.writer-header .writer-title-input{min-width:80px}.writer-pen-tools label{font-size:10px}.writer-audio-card audio{min-height:30px}.writer-audio-title,.writer-audio-transcript{-webkit-user-select:text;user-select:text;touch-action:manipulation}}
@media(max-width:420px){.app-header .brand-name{display:none}.app-header .brand{min-width:28px}.app-header .header-actions{flex:1;justify-content:flex-end}.header-history button{min-width:28px}.app-header .btn{padding:7px 5px}}

/* Resizable, movable tool surfaces. Content scrolls independently of the grips. */
.fd-panel-bound{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;overflow:hidden!important;box-sizing:border-box;padding-bottom:19px!important;min-width:0}
.fd-panel-bound[hidden]{display:none!important}
.fd-panel-heading{flex:none;cursor:grab;touch-action:none;user-select:none;display:flex;align-items:center;gap:8px;min-height:29px}
.fd-panel-heading>strong{flex:1;min-width:0}
.fd-panel-caption{border-bottom:1px solid #eadbd2;margin-bottom:6px;padding-bottom:5px}
.fd-panel-reset{font:16px Arial!important;border:0!important;background:transparent!important;color:#9d3026!important;min-width:28px!important;min-height:28px!important;padding:3px!important;cursor:pointer;flex:none}
.fd-panel-scroll{flex:1;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;padding:1px 3px 3px 1px}
.inline-edit-toolbar>.fd-panel-scroll{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px}
.inline-edit-toolbar.fd-panel-bound{align-items:stretch;justify-content:flex-start;max-width:min(650px,calc(100% - 16px))}
.fd-panel-grip{position:absolute!important;z-index:8;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;min-width:0!important;min-height:0!important;touch-action:none;user-select:none;color:#a91414!important}
.fd-panel-grip-e{right:0;top:39px;bottom:20px;width:10px!important;cursor:ew-resize}
.fd-panel-grip-s{bottom:0;left:8px;right:22px;height:12px!important;cursor:ns-resize}
.fd-panel-grip-se{right:0;bottom:0;width:24px!important;height:24px!important;cursor:nwse-resize;font-size:20px!important;line-height:22px!important;border-radius:4px!important;background:#fff2e9!important}
.fd-panel-grip:focus-visible{outline:2px solid #a91414!important;outline-offset:-3px;background:#ffe2d5!important}
.fd-panel-changing{z-index:3000!important;box-shadow:0 8px 30px #40221644!important}
.fd-panel-positioned{z-index:1100}
.fd-font-trigger{max-width:155px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:32px;border:1px solid #ddc9bf;border-radius:5px;padding:6px 8px;background:#fff;color:#49372e;font:12px Arial;cursor:pointer}
.fd-font-trigger:focus-visible{outline:2px solid #a91414}
.fd-font-popup{position:fixed;z-index:2200;background:#fffaf6;border:1px solid #d7bbac;border-radius:10px;box-shadow:0 14px 50px #29150e33;color:#342b28;font:13px/1.4 Arial,sans-serif;width:430px;height:570px;max-width:calc(100vw - 16px);max-height:calc(100vh - 24px);width:min(430px,calc(100vw - 16px));height:min(570px,calc(100vh - 24px));padding:10px}
.fd-font-popup>header{padding:0 3px 7px;border-bottom:1px solid #eadbd2}
.fd-font-close{background:transparent;border:0;padding:3px 7px;min-height:28px;font-size:21px;color:#8a3228;cursor:pointer}
.fd-font-panel>.fd-panel-scroll{display:flex;flex-direction:column;overflow:hidden}
.fd-font-popup-body,#writer-font-browser{display:flex;min-height:0;flex:1;flex-direction:column}
#writer-dialog.canvas-writer .writer-popover.fd-font-panel{width:430px;height:580px;width:min(430px,calc(100% - 24px));height:min(580px,calc(100% - 28px));max-width:calc(100% - 16px);max-height:calc(100% - 16px)}
.fd-font-browser{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}
.fd-font-filters{display:flex;gap:6px;flex:none;margin-top:7px}
.fd-font-query{min-width:0;flex:1}
.fd-font-category{max-width:125px;min-width:70px;width:35%!important}
.fd-font-browser input,.fd-font-browser select{font:13px Arial!important;border:1px solid #dfcbbf!important;border-radius:5px!important;padding:6px!important;box-sizing:border-box;min-width:0}
.fd-font-sample-label{font:11px Arial!important;display:block!important;color:#806253;margin:0!important;flex:none}
.fd-font-sample-input{display:block;width:100%;margin-top:4px}
.fd-font-list{overflow:auto;min-height:60px;flex:1;border:1px solid #e3d2c8;border-radius:6px;background:white;overscroll-behavior:contain}
.fd-font-row{display:flex;flex-direction:column;text-align:left;width:100%;background:#fff;border:0;border-bottom:1px solid #f0e5df;padding:8px 10px;gap:4px;cursor:pointer;box-sizing:border-box;color:#342b28}
.fd-font-row[aria-selected=true]{background:#fff0e7;box-shadow:inset 3px 0 #b0251e}
.fd-font-row:focus-visible{outline:2px solid #a91414;outline-offset:-2px}
.fd-font-row-name{font:11px Arial!important;color:#805c49}
.fd-font-row-sample{font-size:22px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.fd-font-row[data-loaded=error] .fd-font-row-sample{font:12px Arial;color:#9a3028}
.fd-font-more{width:100%;border:0;background:#fff7f0;color:#963324;padding:10px;cursor:pointer;font:12px Arial}
.fd-font-detail{flex:none;border-top:1px solid #e5d6cc;padding-top:6px}
.fd-font-current-name{font-size:12px}
.fd-font-current-sample{font-size:27px;line-height:1.3;max-height:95px;overflow:auto;overflow-wrap:anywhere;padding:5px 0}
.fd-font-message{font:10px/1.4 Arial;color:#8b6b5b;display:block;min-height:14px}
.fd-font-browser>footer{display:flex;gap:6px;align-items:center;justify-content:space-between;flex:none}
.fd-font-count{font:10px Arial;color:#947666}
.fd-font-live-hint{font:11px Arial;color:#785d50;max-width:75%;text-align:right}.fd-font-row[aria-selected=true]{outline:2px solid #b42a20;outline-offset:-2px}.fd-font-list{overscroll-behavior:contain;scrollbar-gutter:stable}
@media(max-width:760px){.fd-font-popup{width:calc(100vw - 20px);height:min(570px,calc(100vh - 30px))}.fd-font-browser input,.fd-font-browser select{font-size:16px!important}.fd-panel-grip-e{width:14px!important}.fd-panel-grip-s{height:16px!important}.fd-panel-grip-se{width:30px!important;height:26px!important}.fd-font-row{min-height:66px}.fd-font-trigger{max-width:125px}.fd-font-detail{max-height:120px;overflow:auto}}

.inline-edit-toolbar.fd-panel-bound{max-height:60vh;max-height:min(60vh,500px)}.inline-edit-toolbar .inline-geometry[open]{flex-basis:100%;width:100%}.inline-edit-toolbar .inline-geometry>div{position:static!important;box-shadow:none!important;max-width:100%!important;width:auto!important;box-sizing:border-box}.inline-edit-toolbar.fd-panel-positioned{max-height:none}

.fd-font-panel>.fd-panel-scroll{overflow:auto}.fd-font-popup-body.fd-font-browser,#writer-font-browser.fd-font-browser{min-height:330px}.fd-font-row-name{line-height:1.3}.fd-font-popup .fd-panel-heading{padding-right:2px}

/* The font field is the sample; the normal chooser is a small native-style list. */
.fd-font-trigger{display:inline-flex;align-items:center;gap:7px;vertical-align:middle;padding:5px 8px;min-width:88px;max-width:180px}
.fd-font-selected-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.35}
.fd-font-arrow{font:12px Arial,sans-serif;flex:none;margin-left:auto}
.fd-font-tools{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;min-width:30px;min-height:32px;margin-left:3px;padding:2px 6px;border:1px solid #ddc9bf;border-radius:5px;background:#fff;color:#813b2d;font:700 19px Arial,sans-serif;cursor:pointer}
.fd-font-tools:focus-visible,.fd-font-trigger:focus-visible{outline:2px solid #a91414;outline-offset:1px}
.fd-font-dropdown{position:fixed;z-index:3200;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden;resize:both;min-width:180px;min-height:130px;max-width:calc(100vw - 16px);max-height:calc(100vh - 24px);border:1px solid #cdb6aa;border-radius:6px;background:white;color:#342b28;box-shadow:0 7px 22px #29150e33;padding:3px}
.fd-font-mini-list{flex:1;min-height:60px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.fd-font-option{display:block;width:100%;min-height:39px;padding:7px 10px;border:0;border-radius:3px;background:white;color:#342b28;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:18px;font-weight:400;line-height:1.35;cursor:pointer}
.fd-font-option:hover,.fd-font-option.fd-font-active{background:#fff0e7}
.fd-font-option[aria-selected=true]{box-shadow:inset 3px 0 #b0251e}
.fd-font-option:focus-visible{outline:2px solid #a91414;outline-offset:-2px}
.fd-font-option[data-loaded=error]{color:#8e3b30}
.fd-font-mini-status{display:block;flex:none;font:11px/1.4 Arial,sans-serif;color:#a91414;padding:0 6px}
.fd-font-mini-status:empty{display:none}.fd-font-mini-loading{display:block;padding:12px;font:13px Arial,sans-serif}
@media(max-width:760px){.fd-font-option{min-height:44px}.fd-font-selected-name{font-size:16px}.fd-font-tools{min-width:34px;min-height:34px}.fd-font-trigger{max-width:165px}}

/* Uniform DOM scaling keeps every active control in the user's chosen frame. */
.fd-panel-canvas,.fd-menu-canvas{display:flex;flex-direction:column;min-width:0;min-height:0;flex:1;box-sizing:border-box;transform-origin:top left}
.fd-panel-canvas>.fd-panel-heading{flex:none}
.inline-edit-toolbar>.fd-panel-canvas>.fd-panel-scroll{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px}
.fd-font-popup>.fd-panel-canvas>header{padding:0 3px 7px;border-bottom:1px solid #eadbd2}
.fd-font-panel>.fd-panel-canvas>.fd-panel-scroll{display:flex;flex-direction:column;overflow:auto}
.fd-panel-scaled:not(.fd-font-panel):not(#writer-library)>.fd-panel-canvas>.fd-panel-scroll{overflow:visible}
.fd-panel-scaled>.fd-panel-canvas{flex:none}
.fd-menu-canvas{flex:none;overflow:hidden}
.fd-menu-canvas>.fd-font-mini-list{flex:1;min-height:0}
.fd-cloud-panel{position:fixed;right:24px;top:108px;width:360px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 128px);overflow:auto;z-index:180;box-shadow:0 14px 48px #4d201b33;background:#fff9f5;border:1px solid #dfc9be;border-radius:14px;padding:14px;color:#322723}.fd-cloud-panel header{display:flex;justify-content:space-between;align-items:center}.fd-cloud-panel label{display:flex;flex-direction:column;gap:5px;margin:9px 0}.fd-cloud-panel input,.fd-cloud-panel select{font:inherit;width:100%;min-width:0;padding:7px;border:1px solid #d6c6bb;border-radius:7px;box-sizing:border-box}.fd-cloud-destinations{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.fd-cloud-panel summary{cursor:pointer;padding:9px 0}.fd-cloud-panel .error{color:#a91414}

/* One permanent toolbar owns text tools; it takes layout space, never page space. */
.viewer-toolbar{position:relative;box-sizing:border-box;min-height:44px;max-width:100%;align-self:flex-start;width:100%;height:57px;overflow:auto;align-items:center;touch-action:pan-x}
.viewer-toolbar .toolbar-left{flex:none;min-width:max-content;padding-right:20px;gap:6px}
.viewer-toolbar .viewer-text-tools{position:static!important;display:inline-flex!important;flex-flow:row nowrap!important;align-items:center;justify-content:flex-start;flex:none;gap:6px;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important;width:max-content!important;max-width:none!important;max-height:none!important;height:auto!important;font-size:11px!important}
.viewer-text-tools label{flex:none;white-space:nowrap;margin:0;gap:4px}.viewer-text-tools input[type=number]{width:48px;font:inherit;padding:5px}.viewer-text-tools .text-tool-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;cursor:pointer;border-radius:5px;overflow:hidden}.text-tool-toggle input{position:absolute;width:100%!important;height:100%;inset:0;opacity:0;cursor:pointer;margin:0}.text-tool-toggle:has(input:checked){background:#f8dfd6;color:#a91414}.text-tool-toggle:focus-within{outline:2px solid #a91414}.text-tool-bold{font-weight:bold}.text-tool-italic{font-style:italic}.text-tool-underline{text-decoration:underline}.text-tool-highlight{background:#fff2b2}.text-align-tools{display:inline-flex;gap:2px}.text-align-button{width:30px;height:30px;padding:4px;border-radius:5px;flex:none}.text-align-button svg{width:22px;height:22px}.text-align-button[aria-pressed=true]{background:#f8dfd6;color:#a91414}.viewer-text-tools .inline-geometry{display:flex;flex:none;align-items:center;gap:5px}.viewer-text-tools .inline-geometry>div{position:static!important;display:flex;align-items:center;flex-flow:row nowrap;gap:5px;border:0;box-shadow:none;padding:0;width:auto!important}.viewer-text-tools .inline-geometry:not([open])>div{display:none!important}.viewer-text-tools .inline-geometry small,.viewer-text-tools .inline-geometry strong{display:none}.viewer-text-tools .inline-geometry summary{white-space:nowrap;cursor:pointer}.viewer-toolbar-resize{position:sticky;right:0;bottom:0;align-self:flex-end;flex:none;width:18px;min-width:18px!important;height:18px;min-height:18px!important;padding:0!important;touch-action:none;background:#fff7f1;color:#a91414;cursor:nwse-resize;font:14px Arial;border:0;z-index:3}.inline-tools-fallback{display:flex;flex:none;overflow:auto}.viewer-text-tools .text-align-label[hidden]{display:none!important}
@media(max-width:760px){.viewer-toolbar{height:54px;padding:0 8px}.viewer-text-tools label{font-size:11px!important}.viewer-text-tools .text-tool-toggle,.text-align-button{width:34px;height:34px}.viewer-text-tools .fd-font-trigger{max-width:130px}}

.viewer-text-tools [hidden]{display:none!important}.viewer-toolbar.has-live-text [data-action=rotate],.viewer-toolbar.has-live-text .toolbar-left>.divider,.viewer-toolbar.has-live-text .tool-pill:not([data-tool=select]){display:none}.text-tool-toggle.is-on{background:#f8dfd6;color:#a91414}.viewer-toolbar.has-live-text>.viewer-toolbar-resize{position:sticky}

/* Font families share the document's formatting row; their list owns layout space. */
.viewer-font-control{display:inline-flex;align-items:center;flex:none;gap:3px;margin:0 3px}.viewer-font-control .fd-font-trigger{width:172px;max-width:172px;min-width:115px;min-height:34px;padding:5px 8px}.viewer-font-control .fd-font-selected-name{font-size:14px}.viewer-font-control .fd-font-tools{min-width:28px;min-height:32px;margin-left:0}.fd-font-dropdown.fd-font-docked{position:relative;inset:auto!important;flex:none;align-self:stretch;width:100%!important;max-width:100%;height:min(240px,32vh);min-height:105px;max-height:36vh;box-shadow:none;border-width:0 0 1px;border-radius:0;resize:vertical;padding:3px 8px;z-index:auto;overflow:hidden}.fd-font-docked .fd-font-option{min-height:39px}.fd-font-docked .fd-font-mini-status{min-height:0}.fd-font-docked .fd-font-mini-status:empty{display:none}.fd-font-docked .fd-font-mini-list{scrollbar-gutter:stable}.fd-font-heading{display:flex;align-items:center;justify-content:space-between;flex:none;padding:3px 6px;font-size:11px;color:#80645c}.fd-font-heading button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:20px;line-height:1;padding:2px 7px}.fd-font-dropdown:not(.fd-font-docked) .fd-font-heading{display:none}
@media(max-width:760px){.viewer-font-control{gap:2px;margin:0 1px}.viewer-font-control .fd-font-trigger{width:138px;max-width:138px;min-width:110px}.viewer-font-control .fd-font-tools{min-width:26px}.fd-font-docked .fd-font-option{min-height:44px}.fd-font-dropdown.fd-font-docked{height:min(230px,32vh);max-height:36vh}}
