/* A single avatar moves from the introduction to a section-aware guide. */
.hero-avatar-placeholder{visibility:hidden!important;pointer-events:none!important}
#hero-avatar{overflow:visible;pointer-events:auto}
#avatar-guide-trigger{display:block;position:relative;width:100%;height:100%;padding:0;background:none;border:0;transform-origin:top left;-webkit-tap-highlight-color:transparent;isolation:isolate}
#avatar-guide-trigger .avatar-figure{display:block;position:relative;width:100%;height:100%;transform:translate(var(--avatar-tilt-x,0),var(--avatar-tilt-y,0));transition:transform .25s ease}
#avatar-guide-trigger .avatar-figure img{width:100%;height:100%;object-fit:contain;object-position:center bottom;pointer-events:none}
#avatar-guide-trigger:focus-visible{outline:2px solid #9b602d;outline-offset:7px;border-radius:24px}
.avatar-hero-hint{position:absolute;left:50%;bottom:-19px;transform:translateX(-50%);display:flex;gap:24px;align-items:center;white-space:nowrap;background:#faf8f2e8;backdrop-filter:blur(10px);border:1px solid #d8cabc;border-radius:40px;padding:9px 17px;box-shadow:0 8px 22px #171b2c08;font-size:11px;font-weight:700;letter-spacing:.01em;transition:background .2s,box-shadow .2s}
.avatar-hero-hint>span{color:#9b602d;font-size:17px;line-height:1}
#avatar-guide-trigger:hover .avatar-hero-hint{background:#fffdf8;box-shadow:0 10px 30px #171b2c12}
.avatar-dock-label{display:none}
#hero-avatar.is-docked{position:fixed;inset:auto max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) auto;width:fit-content;height:68px;max-width:calc(100vw - 32px);transform:none;transition:none;z-index:30;animation:none;will-change:auto}
#hero-avatar.is-docked #avatar-guide-trigger{display:flex;align-items:center;gap:0;width:auto;height:68px;border-radius:40px;border:1px solid #d8cabc;background:#faf8f3f5;backdrop-filter:blur(16px);box-shadow:0 7px 28px #171b2c1a;padding:5px 5px 5px 0;transition:box-shadow .2s,background .2s}
#hero-avatar.is-docked .avatar-figure{width:56px;height:56px;flex:0 0 56px;overflow:hidden;border-radius:50%;margin-left:5px;background:#e6ddcf;transform:none;transition:none;box-shadow:inset 0 0 0 1px #9b602d20}
#hero-avatar.is-docked .avatar-figure img{position:absolute;width:300%;height:auto;max-width:none;left:50%;top:-2%;transform:translateX(-50%);object-fit:initial;object-position:initial;filter:none;animation:none}
#hero-avatar.is-docked .avatar-hero-hint{display:none}
#hero-avatar.is-docked .avatar-dock-label{display:flex;flex-direction:column;text-align:left;gap:4px;line-height:1.1;padding:0 17px 0 12px;max-width:150px}
.avatar-dock-prompt{font-size:9px;font-weight:400;color:#69695f}
.avatar-dock-label strong{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}
#hero-avatar.is-docked #avatar-guide-trigger:hover{background:#fffdf8;box-shadow:0 8px 35px #171b2c25}
#hero-avatar.guide-is-open.is-docked #avatar-guide-trigger{border-color:#9b602d;background:#f5eee3}
#hero-avatar.is-traveling .avatar-hero-hint,#hero-avatar.is-traveling .avatar-dock-label{opacity:0}
#hero-avatar.is-docked.is-traveling #avatar-guide-trigger{border-color:transparent;background:none;box-shadow:none;backdrop-filter:none}
#hero-avatar.is-docked.is-traveling .avatar-figure{position:absolute;inset:0;width:100%;height:100%;margin:0;overflow:visible;border-radius:0;background:none;box-shadow:none}
#hero-avatar.is-docked.is-traveling .avatar-figure img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center bottom;transform:none}
.avatar-guide-panel{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(max(24px,env(safe-area-inset-bottom)) + 84px);z-index:29;width:390px;max-width:calc(100vw - 32px);max-height:calc(100svh - 160px);padding:25px;background:#faf8f2f7;backdrop-filter:blur(22px);border:1px solid #d8cabc;border-radius:22px;box-shadow:0 18px 70px #171b2c26;color:#171b2c;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;transform-origin:right bottom}
.avatar-guide-panel[hidden]{display:none!important}
.guide-panel-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}
.guide-panel-header>.eyebrow{color:#9b602d;font-size:9px;letter-spacing:.14em}
#avatar-guide-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;background:#ede8de;border:1px solid #e1d9cc;border-radius:50%;font-size:21px;line-height:1;transition:background .2s}
#avatar-guide-close:hover{background:#e4dbcf}
#guide-section-label{font-size:8px;letter-spacing:.13em;color:#757166;line-height:1.5;margin:0 0 10px;font-weight:700}
#guide-title{font-size:29px;letter-spacing:-.035em;line-height:1.15;margin:0 0 18px;font-weight:800}
#guide-tabs{display:flex;gap:5px;border-radius:30px;padding:4px;background:#eae5db;width:fit-content;margin-bottom:20px}
#guide-tabs button{padding:8px 15px;font-size:11px;line-height:1.25;border-radius:30px;background:transparent;font-weight:700;transition:background .2s,color .2s}
#guide-tabs button[aria-pressed=true]{background:#171b2c;color:#faf8f2}
#guide-content p{font-size:12px;line-height:1.85;color:#55564e;margin-bottom:12px}
#guide-content p:last-child{margin-bottom:0}
#guide-content ul{padding-left:18px;margin:15px 0 0}
#guide-content li{font-size:11px;line-height:1.75;color:#55564e;margin:0 0 8px;padding-left:3px}
#guide-content li::marker{color:#9b602d}
.guide-panel-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #dfd8cc;padding-top:17px;margin-top:20px}
#guide-read-aloud{padding:8px 11px;font-size:10px;line-height:1.4;font-weight:700;background:#ede6db;border:1px solid #dcd0bf;border-radius:25px;white-space:nowrap;transition:background .2s}
#guide-read-aloud[aria-pressed=true]{background:#171b2c;color:#f5f2eb;border-color:#171b2c}
#guide-read-aloud[hidden]{display:none}
#guide-action-link{font-size:10px;line-height:1.6;font-weight:700;color:#9b602d;text-align:right}
#guide-action-link:hover{text-decoration:underline;text-underline-offset:4px}
#guide-status{font-size:9px;line-height:1.6;color:#64645f;margin:14px 0 0}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:600px){
  .avatar-hero-hint{bottom:-23px;padding:8px 15px;font-size:10px;gap:18px}
  #hero-avatar.is-docked{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));height:62px;max-width:175px}
  #hero-avatar.is-docked #avatar-guide-trigger{height:62px}
  #hero-avatar.is-docked .avatar-figure{width:50px;height:50px;flex-basis:50px}
  #hero-avatar.is-docked .avatar-dock-label{max-width:108px;padding:0 12px 0 9px;gap:4px}
  .avatar-dock-prompt{font-size:8px}
  .avatar-dock-label strong{font-size:11px;max-width:100px}
  .avatar-guide-panel{right:max(14px,env(safe-area-inset-right));bottom:calc(max(14px,env(safe-area-inset-bottom)) + 75px);width:360px;max-width:calc(100vw - 28px);max-height:calc(100svh - 180px);padding:20px;border-radius:19px}
  .guide-panel-header{margin-bottom:16px}
  #guide-title{font-size:26px}
  #guide-content p{font-size:12px}
  #guide-content li{font-size:11px}
  .guide-panel-actions{gap:10px}
}
@media(prefers-reduced-motion:reduce){
  #avatar-guide-trigger .avatar-figure,.avatar-hero-hint,#hero-avatar.is-docked #avatar-guide-trigger,#guide-tabs button,#avatar-guide-close,#guide-read-aloud{transition:none}
}
