/* Guy: a small, welcoming guide that stays out of the reading flow. */
@media(hover:hover) and (pointer:fine){.musical-cursor,.musical-cursor body,.musical-cursor a,.musical-cursor button,.musical-cursor summary,.musical-cursor .image-reveal{cursor:url('/assets/music-rest-cursor.svg') 15 3,auto}.musical-cursor a,.musical-cursor button:not(:disabled),.musical-cursor summary,.musical-cursor [role=button]{cursor:url('/assets/music-rest-link.svg') 15 3,pointer}.musical-cursor input,.musical-cursor textarea,.musical-cursor [contenteditable=true]{cursor:text}.musical-cursor button:disabled,.musical-cursor [aria-disabled=true]{cursor:not-allowed}}
.music-note-burst{position:fixed;inset:0;z-index:2147483646;pointer-events:none!important;overflow:hidden}.music-note-burst-modal{position:absolute}.music-note-spark{position:absolute;display:block;width:var(--note-size);height:var(--note-size);overflow:visible;pointer-events:none!important;fill:none;stroke:#f6d6b5;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #211322);animation:music-note-bloom 2.2s linear both;will-change:transform,opacity}.music-note-spark:nth-child(2n){stroke:#ecaa96}.music-note-spark:nth-child(3n){stroke:#fff4e7}
@keyframes music-note-bloom{0%{opacity:0;transform:translate(-50%,-50%) scale(.65) rotate(-8deg)}10%{opacity:1}40%{transform:translate(calc(-50% + var(--note-x) * .6),calc(-50% + var(--note-y) * .35)) scale(.9) rotate(5deg)}65%{opacity:.85}100%{opacity:0;transform:translate(calc(-50% + var(--note-x)),calc(-50% + var(--note-y))) scale(1) rotate(var(--note-rotation))}}
.motion-off .music-note-burst{display:none}@media(prefers-reduced-motion:reduce){.music-note-burst{display:none}}@media(hover:none),(pointer:coarse){.music-note-burst{display:none}}
.footer-bottom{flex-wrap:wrap;align-items:center}.cursor-control{border:0;background:none;color:var(--muted);padding:8px 0;min-height:40px;font-size:12px;text-decoration:underline;text-underline-offset:4px}.footer-bottom{scroll-margin-top:125px}
.guy-launcher[hidden]{display:none}.guy-launcher{position:fixed;z-index:45;right:max(24px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:3px;padding:0 5px 0 18px;border:1px solid #e1b08b66;border-radius:18px;background:linear-gradient(140deg,#2b251fee,#191612f5);color:var(--paper);box-shadow:0 10px 36px #0007;backdrop-filter:none;-webkit-backdrop-filter:none;height:76px;isolation:isolate;transition:transform .35s var(--ease-out),border-color .3s,box-shadow .3s}
.guy-launcher:hover{transform:translateY(-4px);border-color:#e1b08baa;box-shadow:0 16px 40px #0008}.guy-launcher-copy{text-align:left;display:grid;gap:3px}.guy-launcher-copy strong{font-family:var(--serif);font-size:27px;font-weight:500}.guy-launcher-copy>span{font-size:12px;color:#d0bba6}.guy-mascot{height:115px;width:79px;object-fit:contain;align-self:flex-end;transform-origin:50% 95%;margin-top:-30px;pointer-events:none;filter:drop-shadow(0 5px 5px #0004);animation:guy-hello 1.3s var(--ease-out) 1 .8s}.guy-launcher:hover .guy-mascot{animation:guy-wave .85s ease-in-out 1}.guy-launcher:focus-visible{outline:2px solid var(--copper);outline-offset:5px}
@keyframes guy-hello{0%{transform:translateY(6px) rotate(0)}35%{transform:translateY(-5px) rotate(-7deg)}65%{transform:rotate(5deg)}100%{transform:none}}@keyframes guy-wave{0%,100%{transform:rotate(0)}30%{transform:rotate(-6deg)}65%{transform:rotate(5deg)}}
.guy-dialog{position:fixed;inset:auto 24px 24px auto;margin:0;padding:0;width:420px;max-width:calc(100vw - 32px);height:690px;max-height:calc(100dvh - 44px);border:1px solid #c89b7470;border-radius:18px;color:#f7f2ea;background:#191714;box-shadow:0 20px 100px #0009;overflow:hidden}.guy-dialog[open]{display:flex;flex-direction:column;animation:guy-open .4s var(--ease-out)}.guy-dialog::backdrop{background:#0005;backdrop-filter:blur(2px)}@keyframes guy-open{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
.guy-header{display:flex;align-items:center;gap:16px;min-height:111px;padding:14px 20px 0;background:radial-gradient(ellipse at 10% 100%,#88532c45,transparent 75%);flex:none}.guy-header img{height:99px;width:69px;object-fit:contain;align-self:flex-end;filter:drop-shadow(0 4px 8px #0004)}.guy-kicker{color:#e1b08b;font-size:12px;letter-spacing:.08em;line-height:1.5}.guy-header h2{font:500 37px/1.18 var(--serif);margin:4px 0 0;letter-spacing:-.02em}.guy-close{align-self:flex-start;margin-left:auto;flex:none;width:36px;height:36px;padding:0;display:grid;place-items:center;border:1px solid #d4b29540;background:#ffffff06;border-radius:50%;color:#f4e7d7;font-size:25px;font-weight:400;line-height:1;transition:background .2s}.guy-close:hover{background:#e1b08b25}.guy-description{font-size:13px;line-height:1.6;color:#c6b8a8;padding:16px 22px 18px;margin:0;border-bottom:1px solid #e1b08b20;flex:none}
.guy-conversation{padding:22px 20px 14px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#705f4b transparent;flex:1;min-height:80px;display:flex;flex-direction:column;gap:17px}.guy-message{padding:16px;border-radius:12px 12px 12px 3px;background:#27221c;border:1px solid #d4b29518;max-width:100%;flex:none;animation:guy-reply .3s ease-out}.guy-author{display:block;font-size:12px;font-weight:600;color:#e1b08b;margin-bottom:8px}.guy-message>p{font-size:15px;line-height:1.75;overflow-wrap:anywhere;text-wrap:pretty}.guy-message-visitor{background:#e6be96;color:#231a13;border:0;border-radius:12px 12px 3px 12px;margin-left:35px}.guy-message-visitor .guy-author{color:#62432a}.guy-message>small{display:block;font-size:12px;color:#bfb09f;line-height:1.4;margin-top:13px}.guy-destinations{display:flex;flex-direction:column;gap:8px;margin-top:15px}.guy-destinations a{display:block;width:100%;padding:10px 12px;border:1px solid #d5a27955;border-radius:6px;font-size:14px;line-height:1.4;color:#f4d2b3;background:#d5a27909;transition:background .25s}.guy-destinations a:hover{background:#d5a27922}@keyframes guy-reply{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.guy-prompts{display:flex;flex-wrap:wrap;gap:7px;padding:12px 20px 2px;flex:none}.guy-prompts button{font-size:12px;line-height:1.3;border:1px solid #8f796350;border-radius:20px;padding:8px 11px;min-height:34px;color:#ddcebb;background:transparent;transition:background .2s,color .2s}.guy-prompts button:hover{background:#e1b08b1a;color:#ffe0c2}.guy-prompts button:disabled{opacity:.5}
.guy-question-form{margin:14px 20px 9px;padding:5px 5px 5px 12px;display:flex;align-items:center;gap:8px;background:#0e0d0b;border:1px solid #a68c704f;border-radius:9px;flex:none}.guy-question-form:focus-within{outline:2px solid #e1b08b99;outline-offset:2px}.guy-question-form input{min-width:0;width:100%;background:transparent;border:0;color:#f7f2ea;outline:0;padding:10px 0;font:400 16px/1.4 var(--sans);height:44px}.guy-question-form input::placeholder{font-size:14px;color:#b6a795;opacity:1}.guy-question-form button{flex:none;width:40px;height:40px;background:#e1b08b;border:0;border-radius:6px;color:#21170f;font-size:24px}.guy-question-form button:disabled{opacity:.45}.guy-footnote{padding:0 21px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none}.guy-footnote span{color:#b7a795;font-size:12px;line-height:1.5;max-width:240px}.guy-clear{font-size:12px;line-height:1.4;padding:8px 0;white-space:nowrap;text-decoration:underline;text-underline-offset:4px;border:0;color:#d3bfaa;background:none}.guy-dialog a:focus-visible,.guy-dialog button:focus-visible{outline-offset:3px}
@media(max-width:600px){.guy-launcher{right:14px;bottom:max(16px,env(safe-area-inset-bottom));height:58px;padding-left:13px;border-radius:14px;gap:0}.guy-launcher-copy strong{font-size:23px}.guy-launcher-copy>span{display:none}.guy-mascot{height:85px;width:58px;margin-top:-26px}.guy-dialog{inset:auto 10px max(10px,env(safe-area-inset-bottom)) 10px;width:auto;max-width:none;height:660px;max-height:calc(100dvh - 20px);border-radius:16px}.guy-header{min-height:96px;padding:10px 16px 0;gap:12px}.guy-header img{height:87px;width:60px}.guy-header h2{font-size:34px}.guy-close{width:38px;height:38px}.guy-description{padding:12px 17px 14px;font-size:13px}.guy-conversation{padding:17px 14px 10px;gap:13px}.guy-message{padding:14px}.guy-message>p{font-size:15px;line-height:1.7}.guy-prompts{padding:10px 14px 0;gap:7px}.guy-prompts button{padding:8px 10px;min-height:36px}.guy-question-form{margin:13px 14px 8px}.guy-footnote{padding:0 15px 13px;gap:10px}.guy-footnote span{font-size:12px;max-width:195px}.guy-clear{min-height:36px}.site-footer{padding-bottom:110px}}
@media(max-height:620px){.guy-header{min-height:70px;padding-top:7px}.guy-header img{height:65px;width:46px}.guy-header h2{font-size:29px}.guy-description{padding-top:9px;padding-bottom:9px;font-size:12px}.guy-prompts{display:none}.guy-footnote{padding-bottom:8px}.guy-conversation{min-height:60px}.guy-dialog{max-height:calc(100dvh - 16px);bottom:8px}.guy-question-form{margin-top:8px}}
.motion-off .guy-mascot,.motion-off .guy-launcher:hover{transform:none!important}.motion-off .guy-dialog,.motion-off .guy-message{animation:none!important}
@media(prefers-reduced-motion:reduce){.guy-mascot,.guy-launcher:hover{transform:none!important}.guy-dialog,.guy-message{animation:none!important}}
