/* Settings live beside the wordmark without changing the shelf's geometry. */
#shelf .top{z-index:8}
.home-settings{position:absolute;right:22px;top:50%;transform:translateY(-50%);color:#6c5a4e}
.home-settings>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;min-height:44px;font-size:11px;letter-spacing:.1px}
.home-settings>summary::-webkit-details-marker,.daily-calendars>summary::-webkit-details-marker{display:none}
.home-settings-menu{position:absolute;right:0;top:100%;width:218px;padding:7px;background:#fcf6eafa;border:1px solid #d8c8b1;border-radius:6px;box-shadow:0 9px 26px #412b2420}
.home-settings-menu button{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:46px;padding:10px;border:0;background:none;text-align:left;font-size:13px;color:#5b4739}
#planner-settings{position:fixed;inset:0;margin:auto;width:min(430px,calc(100% - 24px));height:auto;max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:20px 24px 24px;background:#faf4e8;color:#574639;border:1px solid #d1bea4;border-radius:9px;box-shadow:0 20px 65px #39282030;overflow:auto;overscroll-behavior:contain}
#planner-settings::backdrop{background:#3a2b2466;backdrop-filter:blur(3px)}
#planner-settings header{display:flex;align-items:center;justify-content:space-between;gap:10px}
#planner-settings header>span{font-size:10px;letter-spacing:1px;color:#8b735d}
#planner-settings header button{width:44px;height:44px;border:0;background:none;font:28px Georgia,serif;color:#82644c}
#planner-settings h2{margin:8px 0 12px;font:30px/1.15 Georgia,serif;font-weight:400}
.settings-intro{font:14px/1.6 Georgia,serif;color:#89735e;margin:0 0 20px}
.setting-row{display:flex;position:relative;align-items:center;gap:16px;min-height:82px;padding:15px 0;border-top:1px solid #dacdbb;cursor:pointer}
.setting-row>span{flex:1;min-width:0}.setting-row strong{display:block;font-weight:500;font-size:14px}.setting-row small{display:block;font-size:11px;line-height:1.55;color:#88725d;margin-top:5px}
.setting-row input{position:absolute;right:0;width:44px;height:44px;margin:0;opacity:0;cursor:pointer}
.setting-row>i{flex:none;pointer-events:none;width:38px;height:23px;border-radius:20px;background:#cbbfac;position:relative;transition:background .18s}
.setting-row>i:after{content:'';position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;background:#fffaf0;box-shadow:0 1px 3px #36251330;transition:transform .18s}
.setting-row input:checked+i{background:#89614e}.setting-row input:checked+i:after{transform:translateX(15px)}.setting-row input:focus-visible+i{outline:2px solid #965d68;outline-offset:4px}
.settings-footnote,#settings-status{font-size:11px;line-height:1.6;color:#8a745e}.settings-done{width:100%;min-height:46px;border:0;border-radius:4px;background:#78614e;color:#fff8eb;font-size:14px;margin-top:8px}
.daily-leaf{margin:23px 0 8px;padding:0 0 12px;border-bottom:1px solid #dcd0bc}
.daily-leaf-date{font-size:10px;letter-spacing:.6px;color:#937052}
.daily-word{margin:12px 0 15px;font:italic 17px/1.55 Georgia,serif;color:#735744;text-wrap:pretty}
.daily-calendars>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:48px;cursor:pointer;font-size:12px;color:#765443}
.daily-calendars>summary small{display:block;font-size:10px;color:#9b8267;margin-top:4px}.daily-star{font:25px Georgia,serif}.daily-chevron{margin-left:auto;font-size:21px;transition:transform .18s}.daily-calendars[open] .daily-chevron{transform:rotate(180deg)}
.calendar-note{padding:16px 0;border-top:1px solid #dfd1bc}.calendar-note:first-child{margin-top:10px}.calendar-note-label{font-size:9px;text-transform:uppercase;letter-spacing:1.4px;color:#9a7459}.calendar-note h3{font:19px/1.3 Georgia,serif;margin:7px 0 9px;color:#654936}.calendar-note p{font-size:13px;line-height:1.65;margin:0 0 8px;color:#604c3a}.calendar-note small{display:block;font-size:10px;line-height:1.6;color:#917b64}.calendar-note a{display:inline-block;min-height:35px;padding-top:10px;font-size:10px;color:#8b5148;text-underline-offset:3px}
.planner-day header button.today-details{font:italic 10px Georgia,serif;min-height:30px;width:auto;padding:4px 0;color:#97574a}
.home-settings summary:focus-visible,.daily-calendars summary:focus-visible{outline:2px solid #965d68;outline-offset:3px;border-radius:3px}
@media(prefers-reduced-motion:reduce){.setting-row>i,.setting-row>i:after,.daily-chevron{transition:none}}

.daily-collapse-label,.daily-calendars[open] .daily-expand-label{display:none}.daily-calendars[open] .daily-collapse-label{display:inline}
.library-dialog{position:fixed;inset:0;margin:auto;width:min(430px,calc(100% - 28px));max-height:calc(100dvh - 60px);overflow:auto;padding:22px;background:#faf4e8;color:#574639;border:1px solid #d1bea4;border-radius:9px;overscroll-behavior:contain}.library-dialog::backdrop{background:#3a2b2466;backdrop-filter:blur(3px)}.library-dialog header{display:flex;align-items:center;justify-content:space-between;font-size:11px}.library-dialog header button{background:none;border:0;font-size:28px;color:inherit;min-width:44px;min-height:44px}.library-dialog h2{font:27px Georgia,serif}.library-dialog input,.library-dialog select{width:100%;min-width:0;box-sizing:border-box}.shelf-pager{position:absolute;bottom:max(5px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:18px;z-index:9;color:#6c5140;background:#f8efdfd9;border-radius:30px;font-size:11px}.shelf-pager[hidden]{display:none}.shelf-pager button{border:0;background:none;color:inherit;width:44px;height:36px;font-size:21px}.shelf-pager button:disabled{opacity:.25}.personal-book .spine{background-image:linear-gradient(90deg,#fff4 0,transparent 20%,#53232112 90%),url(cloth-full.svg)!important}.personal-book .spine-number{font-size:0}.personal-book .spine-number:after{content:'✧';font-size:20px}.personal-book .spine-mark{border:1px solid currentColor;border-radius:50%;padding:3px}.personal-sections{border-top:1px solid #d8c4af;margin-top:26px;padding-top:14px}.personal-sections summary{font:17px Georgia,serif;min-height:40px;cursor:pointer}.section-rename{display:grid;grid-template-columns:1fr auto;gap:4px;margin-bottom:14px}.section-rename input{min-width:0;width:100%;box-sizing:border-box}.section-rename button:last-child{grid-column:2}.preserved-notes{white-space:pre-wrap;font-size:13px}.personal-delete-task{display:block;margin:-6px 0 15px auto;font-size:10px;opacity:.75}.setting-select{display:block;font-size:12px;margin:0 0 18px;color:#785d48}.setting-select select{display:block;width:100%;min-height:44px;margin-top:7px;background:#fff9ee;border:1px solid #d5c3a9;border-radius:4px;color:#574639;padding:8px;font-size:14px}.calendar-note a:empty{display:none}
.calendar-note p{white-space:pre-line}
.personal-reader .ribbon-ink{white-space:normal;overflow-wrap:anywhere;line-height:1.15}
.personal-book .spine-number:after{font-size:10px}#cabinet .personal-book .spine-title{font-size:clamp(11px,3.2vw,16px)}
.home-settings-menu{width:min(266px,calc(100vw - 36px));max-height:calc(100dvh - 110px);overflow:auto;overscroll-behavior:contain}.home-settings-menu .setting-row{padding:12px 10px;min-height:60px;gap:10px}.home-settings-menu .setting-row input{right:10px}.home-settings-menu .setting-row small{font-size:10px}.home-settings-menu [data-library-status]:empty{display:none}.daily-word-label{display:block;margin-top:14px;font-size:9px;letter-spacing:1px;color:#97755a;text-transform:uppercase}.about-dialog p{font-size:13px;line-height:1.7}.about-dialog h3{font:20px Georgia,serif;margin-top:26px}.about-dialog a{color:#8b5148;text-underline-offset:3px}.project-actions{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.archive-entry{border-top:1px solid #d8c7b1;padding:18px 0}.archive-entry h3{font:22px Georgia,serif;margin:0 0 8px;overflow-wrap:anywhere}.archive-entry small{display:block;color:#8a735b;font-size:11px;margin-bottom:15px}.archive-entry p{font-size:13px;line-height:1.6}.archive-entry .text-action{min-height:44px;margin-right:12px}.archive-entry .paper-button{margin-right:10px}.archive-empty{font:italic 17px/1.6 Georgia,serif;margin:24px 0}.danger{color:#9a3e4a!important}
