/* Sunburst entry world: artwork leads; controls stay outside character silhouettes. */
@font-face{font-family:Valley;src:url('/assets/cinzel-variable-Dzu6Mfm8.ttf') format('truetype');font-display:swap}
:root{--valley-paper:#fff2d5;--valley-ink:#343c29;--valley-wood:#794329;--valley-rose:#a94542;--valley-gold:#e7b85f}
.sunburst-art{position:absolute;inset:0 0 156px;width:100%;height:calc(100% - 156px);object-fit:contain;object-position:center;background:#38472e;pointer-events:none;animation:valley-arrive .7s cubic-bezier(.16,1,.3,1) both}
#boot-screen,#title-screen,#wild-ui #title{background:var(--valley-paper);color:var(--valley-ink)}
#boot-screen>img:not(.sunburst-art),#boot-screen::before,#boot-screen::after,#title-vignette,#title-paw,.boot-paw{display:none!important}
#boot-title,#title-content{position:absolute;inset:auto 0 0;max-width:none;min-height:156px;padding:16px 24px;display:flex;flex-wrap:wrap;align-content:center;align-items:center;justify-content:center;gap:10px 20px;background:var(--valley-paper);color:var(--valley-ink);box-sizing:border-box}
#boot-title .boot-game-title,#title-content #game-title,#wild-ui #title #game-title{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#boot-title .boot-game-subtitle{font:600 22px/1.3 Valley,Georgia,serif;letter-spacing:0;color:var(--valley-wood);text-shadow:none;margin:0}
#boot-title .boot-invitation{font:16px/1.5 Georgia,serif;letter-spacing:0;color:var(--valley-ink);margin:0}
#boot-title .boot-enter{margin:0;min-width:190px}
#boot-title .site-share-tools,#title-menu .site-share-tools{margin:0;max-width:100%}
#title-content{min-height:200px;gap:8px}
#title-screen>.sunburst-art{bottom:200px;height:calc(100% - 200px)}
#title-content #game-subtitle{width:100%;margin:0;font:600 19px/1.4 Valley,Georgia,serif;color:var(--valley-wood);letter-spacing:0;text-shadow:none}
#title-menu{width:auto;max-width:100%;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px}
#title-content #title-hint,#title-content #title-version{width:100%;margin:0;color:var(--valley-ink);font:12px/1.5 Georgia,serif;text-shadow:none;letter-spacing:0}
#boot-title button,#title-menu button,#wild-ui #title button,.site-share-tools button{min-height:48px;padding:12px 22px;border:0;border-radius:12px;background:var(--valley-wood);color:var(--valley-paper);font:600 15px/1.3 Valley,Georgia,serif;letter-spacing:0;box-shadow:0 5px 12px #603e2424;transition:background-color .15s,box-shadow .15s;transform:none}
#boot-title .boot-enter,#title-menu #btn-new-game,#wild-ui #title #start{background:var(--valley-rose)}
#boot-title button:hover,#title-menu button:hover,#wild-ui #title button:hover,.site-share-tools button:hover{background:#593322;filter:none;transform:none;box-shadow:0 3px 8px #603e2433}
#boot-title button:focus-visible,#title-menu button:focus-visible,#wild-ui #title button:focus-visible,.site-share-tools button:focus-visible{outline:3px solid var(--valley-ink);outline-offset:4px}
#boot-screen .boot-loading{bottom:24px;color:var(--valley-ink);background:var(--valley-paper);padding:8px}
#boot-screen .boot-loading-text{color:var(--valley-ink);letter-spacing:1px;text-shadow:none}
#boot-screen.loading #boot-title{visibility:hidden}
#boot-screen.error #boot-title{visibility:visible}
#pause-screen .panel,#settings-screen .panel,#wild-ui .menu-sheet{background:var(--valley-paper);color:var(--valley-ink);border:0;border-radius:16px;box-shadow:0 15px 50px #211b1640}
#pause-screen .panel button,#settings-screen .panel button,#wild-ui .menu-sheet button{color:var(--valley-ink);border-color:#79432955;border-radius:8px}
#pause-screen .panel-title,#settings-screen .panel-title,#wild-ui .menu-sheet h2{font-family:Valley,Georgia,serif;color:var(--valley-wood)}
#wild-ui #title{display:block;padding:0;overflow:auto}
#wild-ui #title::after{display:none}
#wild-ui #title .sunburst-art{z-index:0}
#wild-ui #title .title-copy{position:absolute;inset:auto 0 0;width:100%;max-width:none;min-height:156px;margin:0;padding:20px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--valley-paper);border-radius:0;color:var(--valley-ink)}
#wild-ui #title .title-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}
#wild-ui #title .site-share-tools{margin:0}
.sunburst-chapter{margin:0;font:600 23px/1.3 Valley,Georgia,serif;color:var(--valley-wood);text-align:center}
.sunburst-route{font:14px/1.4 Georgia,serif;color:var(--valley-wood);text-underline-offset:4px}
#boot-title .sunburst-route{flex-basis:100%;text-align:center}
.sunburst-route:focus-visible{outline:3px solid var(--valley-ink);outline-offset:4px}
::selection{background:#f0c779;color:#343c29}
@keyframes valley-arrive{from{filter:brightness(.88)}to{filter:brightness(1)}}
@media(max-width:640px){
 .sunburst-art,#title-screen>.sunburst-art{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
 #boot-screen,#title-screen{display:flex;flex-direction:column;justify-content:flex-start;overflow:auto}
 #boot-title,#title-content,#wild-ui #title .title-copy{position:relative;inset:auto;min-height:0;padding:28px 22px;flex-direction:column;gap:16px;flex-wrap:nowrap}
 #boot-title .boot-game-subtitle{font-size:24px;text-align:center}
 #boot-title .boot-invitation{max-width:28ch;text-align:center}
 #boot-title .boot-enter{width:100%;max-width:320px}
 #title-content #title-hint{max-width:30ch}
 #title-menu{flex-direction:column;width:min(100%,300px)}
 #title-menu>button{width:100%}
 #wild-ui #title .title-actions{width:100%;max-width:320px}
 #wild-ui #title #start{flex:1;justify-content:center}
 #wild-ui #title .title-copy{gap:22px}
 #boot-screen .boot-loading{position:relative;bottom:auto;margin-top:24px}
}
@media(prefers-reduced-motion:reduce){.sunburst-art{animation:none}#boot-screen,#title-screen,#boot-title button,#title-menu button,#wild-ui #title button{transition:none}#title-paw,.boot-paw{animation:none}}
/* Keep baseline boot-image filters and layout rules off the new illustration. */
#boot-screen>img.sunburst-art{position:absolute;inset:0 0 200px;width:100%;height:calc(100% - 200px);object-fit:contain;filter:none;transform:none;animation:valley-arrive .7s cubic-bezier(.16,1,.3,1) both}
#boot-title{min-height:200px;flex-direction:row}
#boot-title .boot-game-subtitle{flex-basis:100%}
#boot-title .site-share-tools{order:2}
#boot-title .sunburst-route{order:3}
#wild-ui #title>.sunburst-art{height:calc(100% - 224px);bottom:224px}
#wild-ui #title .title-copy{min-height:224px}
@media(max-width:640px){
 #boot-screen>img.sunburst-art,#wild-ui #title>.sunburst-art{position:relative;inset:auto;flex:none;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;filter:none;transform:none}
 #boot-title{flex-direction:column;min-height:0}
 #boot-title .boot-game-subtitle{flex-basis:auto}
 #wild-ui #title .title-copy{min-height:0}
}
@media(prefers-reduced-motion:reduce){#boot-screen>img.sunburst-art{animation:none}}
/* Loading feedback is decorative and must never intercept the entry action. */
#boot-screen .boot-loading{pointer-events:none}
