.my-notes-tab{position:fixed;right:22px;bottom:22px;z-index:90;display:grid;place-items:center;width:52px;height:52px;min-height:0;padding:0;border:1px solid #b59b62;border-radius:50%;background:linear-gradient(145deg,#3b3b2b,#112b2c);color:#eedba7;box-shadow:0 6px 22px #0009,inset 0 0 0 3px #b8995418;cursor:pointer}
.my-notes-tab svg{display:block;width:27px;height:29px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.my-notes-tab:hover,.my-notes-tab:focus-visible{background:#353323;outline:2px solid #dfc180;outline-offset:3px}
.notebook-panel{box-sizing:border-box;position:fixed;inset:16px 16px 16px auto;margin:0;width:min(430px,calc(100vw - 32px));height:calc(100dvh - 32px);max-height:none;max-width:none;z-index:2147483000;padding:24px 22px 14px;border:1px solid #a88951;border-radius:3px;background:radial-gradient(ellipse at top left,#86704624,transparent 50%),linear-gradient(150deg,#192322f5,#091313fa);color:#e5dcc6;box-shadow:0 16px 70px #000b,inset 0 0 0 5px #bca26a12;backdrop-filter:blur(20px);font:16px/1.6 Georgia,serif;display:flex;flex-direction:column;gap:0;overflow:hidden;text-align:left;animation:notebook-arrive .25s ease-out}
.notebook-panel[hidden]{display:none}.notebook-panel::backdrop{background:transparent;pointer-events:none}
.notebook-panel *{box-sizing:border-box}.notebook-panel button{cursor:pointer;font:inherit;color:#ead5a6;border:1px solid #bda56b66;background:#b69b5910;padding:9px 13px;min-height:44px;border-radius:2px;letter-spacing:normal;white-space:normal}
.notebook-panel button:hover{background:#c6a76525}.notebook-panel :focus-visible{outline:2px solid #e5c77f;outline-offset:3px}
.notebook-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.notebook-panel .notebook-kicker{font:10px/1.5 Georgia,serif;letter-spacing:.17em;color:#bea675;margin:0 0 8px}.notebook-panel h2{font:36px/1.1 Georgia,serif;letter-spacing:0;color:#f0ddb5;margin:0}.notebook-panel .notebook-close{font-size:28px;border:0;background:none;padding:0;width:44px;flex-shrink:0}
.notebook-panel .notebook-private{font-size:12px;color:#aaa997;margin:14px 0 18px}.notebook-tabs{display:flex;gap:8px;padding-bottom:18px;border-bottom:1px solid #b6a16d45}.notebook-tabs button{flex:1}.notebook-tabs button[aria-pressed=true]{color:#fff0c7;background:#b093492b;border-color:#c2a264}
.notebook-content{flex:1;overflow:auto;overscroll-behavior:contain;min-height:0;padding:18px 3px 16px}.notebook-panel .notebook-room{margin:0;color:#c0a471;font-size:13px;letter-spacing:.07em}.notebook-panel h3{font:25px/1.3 Georgia,serif;margin:6px 0 20px;color:#ecdfbd}.notebook-panel .notebook-label{display:block;font:14px Georgia,serif;margin-bottom:10px;color:#cdbb94}
.notebook-panel .notebook-writing,.notebook-panel textarea,.notebook-panel input{display:block;width:100%;border:1px solid #b89c6055;border-radius:2px;background:#040e1070;color:#f0eadb;font:16px/1.8 Georgia,serif;padding:14px;letter-spacing:normal;box-shadow:inset 0 2px 15px #0002;resize:vertical}.notebook-panel .notebook-writing{min-height:240px;height:37dvh;max-height:65dvh;background:repeating-linear-gradient(transparent,transparent 28px,#bc9d5a0c 28px,#bc9d5a0c 29px),#06101270}.notebook-panel textarea::placeholder,.notebook-panel input::placeholder{color:#8e958a;opacity:1}.notebook-panel textarea:disabled{opacity:.55}
.notebook-panel .notebook-status{font-size:13px;color:#b4c8b4;margin:10px 0;min-height:22px}.notebook-panel .notebook-status[data-error=true]{color:#efbd8d}.notebook-panel .notebook-hint{font-size:13px;margin:0 0 16px;color:#b4b5a6}.notebook-panel .notebook-footer{border-top:1px solid #b6a16d45;padding-top:12px;text-align:center;font-size:12px;font-style:italic;color:#ac9d7c}
.notebook-group{padding:20px 0 0}.notebook-panel .notebook-group h3{font-size:18px;margin:0 0 10px}.notebook-panel .notebook-note{display:block;width:100%;text-align:left;margin:0 0 8px;padding:12px 14px}.notebook-note strong,.notebook-note span,.notebook-note small{display:block;overflow-wrap:anywhere}.notebook-note span{font-size:14px;color:#bdbcae;line-height:1.5;margin-top:6px;white-space:pre-wrap}.notebook-note small{color:#e0b083}.notebook-empty{font-style:italic;color:#b9b8a7}.notebook-conflict{border-top:1px solid #b99b62;padding-top:12px}.notebook-conflict p{font-size:14px}.notebook-conflict button{margin:8px 6px 0 0}
@media(min-width:1000px){body.notebook-open dialog[open]:not(#sanctuary-entry){max-width:calc(100vw - 490px);margin-left:20px;margin-right:auto}}
@media(max-width:600px){.my-notes-tab{right:12px;bottom:12px;width:48px;height:48px;padding:0}.notebook-panel{inset:8px 8px 8px auto;width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:20px 18px 12px}.notebook-panel h2{font-size:30px}}
@keyframes notebook-arrive{from{opacity:0;translate:16px 0}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.notebook-panel{animation:none}}
/* Keep the notebook independent of the sanctuary's page header/footer rules. */
.notebook-panel .notebook-header{height:auto;min-height:0;padding:0;border:0;flex-shrink:0;text-align:left;background:none}
.notebook-panel .notebook-header::after,.notebook-panel .notebook-header::before{display:none}
.notebook-panel .notebook-footer{display:block;padding:12px 0 0;letter-spacing:normal;flex-shrink:0}
.notebook-panel .notebook-private,.notebook-panel .notebook-tabs{flex-shrink:0}
