@font-face{font-family:ThaiLocal;src:local("Thonburi")}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#0c1411;color:#eee5ce;font-family:ThaiLocal,Tahoma,sans-serif}body{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid #f4d58f;outline-offset:3px}button{touch-action:manipulation}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}#app{height:100dvh;display:flex;flex-direction:column;max-width:1800px;margin:auto;padding:0 28px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}.brand{color:#e9ddbc;display:flex;gap:13px;align-items:center;text-decoration:none;font-family:Georgia,serif;font-size:14px;letter-spacing:2.6px}.brand-mark{font-size:32px;color:#d6b874}.brand small{display:block;font-family:Tahoma,sans-serif;font-size:10px;letter-spacing:1.1px;color:#8a9c8e;margin-top:7px}.edition{color:#829085;font-size:11px;letter-spacing:1px}.edition i{display:inline-block;width:3px;height:3px;background:#788b76;margin:0 12px;vertical-align:middle}.small-button{background:transparent;border:1px solid #475348;border-radius:3px;padding:8px 12px;font-size:11px}.small-button span{padding-left:16px;color:#b2bbab}#game{position:relative;flex:1;min-height:0;overflow:hidden;border:1px solid #71806b;box-shadow:0 0 0 3px #18221a,0 0 0 4px #3c4839;background:#14251b}#world{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none;outline-offset:-4px!important}.vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 90px #08180e55;background:linear-gradient(#07170e55,transparent 25%,transparent 80%,#07170e44)}.location{position:absolute;top:25px;left:27px;display:flex;gap:12px;align-items:center;text-shadow:0 2px 4px #07130a}.location-icon{display:grid;place-items:center;width:38px;height:47px;border:1px solid #ccbd8a88;background:#142719c9;color:#e6ce8e;font-family:Georgia,serif;font-size:22px}.location small{font-family:Georgia,serif;font-size:9px;letter-spacing:2.5px;color:#f4d994}.location h1{font-size:24px;font-weight:normal;margin:5px 0}.location p{margin:0;font-size:10px;color:#d4d6c5}.quest{position:absolute;right:100px;top:25px;padding:13px 18px;background:#122017df;border:1px solid #8d956f66;border-left:2px solid #d3b776;min-width:205px;box-shadow:0 3px 15px #00100833}.quest small{font-size:9px;color:#bac7a8}.quest p{font-size:12px;margin:7px 0 10px}.quest-dots{display:flex;gap:5px}.quest-dots i{width:26px;height:3px;background:#627459}.quest-dots i.done{background:#e9cc82}.top-actions{position:absolute;right:21px;top:25px;display:flex;flex-direction:column;gap:7px}.top-actions button{width:37px;height:36px;border:1px solid #939a7577;background:#142719e0;font-size:17px}.top-actions button[aria-pressed=true]{color:#f9d274;border-color:#e6bf76}.bottom-bar{height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:10px;color:#93a18f;flex-shrink:0}.journey-label{display:flex;align-items:center;gap:9px}.status-light{width:5px;height:5px;background:#b7c18a;box-shadow:0 0 7px #b9d88488;border-radius:50%}.key-guide{display:flex;gap:20px;color:#a0ac9b}.key-guide span{display:flex;align-items:center;gap:7px}kbd{font-family:monospace;font-size:10px;border:1px solid #9ba48255;padding:3px 5px;border-radius:2px;color:#d9ddc5}.demo-label{font-size:9px;color:#657c69}#arrival{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;width:390px;padding:28px;background:linear-gradient(90deg,transparent,#102317df 20%,#102317df 80%,transparent);opacity:0;transition:opacity 1s}#arrival.show{opacity:1}#arrival small{font-size:10px;letter-spacing:1px;color:#e6d6a5}#arrival strong{display:block;font-weight:normal;font-size:42px;letter-spacing:4px;margin:13px 0}#arrival span{display:block;font-size:12px;color:#c9d0b9}#near{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);white-space:nowrap;border:1px solid #d1b679;background:#15251bee;padding:10px 15px;font-size:12px;box-shadow:3px 3px #091b1299;pointer-events:none}#near kbd{margin-left:12px;color:#f3d891}.touch-controls{display:none;position:absolute;left:18px;right:18px;bottom:20px;justify-content:space-between;align-items:flex-end;pointer-events:none}.touch-controls button{pointer-events:auto;user-select:none;-webkit-user-select:none}.dpad{display:grid;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px 44px;gap:3px}.dpad button{border:1px solid #cdcba777;background:#112318ba;color:#e5d8ab;font-size:16px;touch-action:none}.dpad button:active{background:#79734c}.dpad [data-dir=up]{grid-area:1/2}.dpad [data-dir=left]{grid-area:2/1}.dpad [data-dir=right]{grid-area:2/3}.dpad [data-dir=down]{grid-area:3/2}.dpad span{grid-area:2/2;display:grid;place-items:center;background:#18362488;color:#c2c394}#talkButton{height:56px;min-width:79px;padding:10px;border:1px solid #e4c181;background:#233c28e8;box-shadow:0 3px #06170e;font-size:15px}#talkButton span{color:#dcbf72}#toast{position:absolute;left:50%;bottom:80px;transform:translateX(-50%);max-width:90%;width:max-content;background:#102219f2;border:1px solid #b2bb89;padding:12px 18px;font-size:12px;z-index:30;text-align:center;line-height:1.7}#loading{position:absolute;inset:0;background:#122019;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:50;color:#cbb77f;font-size:14px}.loading-star{font-size:35px;animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.3;transform:scale(.85)}}#modal{position:absolute;inset:0;z-index:20;background:#06130d45;display:flex;align-items:flex-end;justify-content:center;padding:25px}.rpg-panel{background:linear-gradient(120deg,#1a2f53fa,#0c1831fc);border:2px solid #c3cbd7;box-shadow:0 0 0 2px #1b2740,0 0 0 3px #647795,0 10px 40px #0008;width:min(790px,100%);max-height:90%;overflow:auto;padding:22px 26px;position:relative;scrollbar-color:#8297b9 #162640}.rpg-panel:before{content:"";position:absolute;inset:4px;border:1px solid #748aac55;pointer-events:none}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.dialog-header h2{font-size:18px;font-weight:normal;color:#f4d590;margin:0}.dialog-header small{font-size:10px;color:#a5b9d0}.close{width:34px;height:34px;flex-shrink:0;background:#203b5a;border:1px solid #607995;font-size:20px}.dialog-layout{display:grid;grid-template-columns:70px 1fr;gap:20px}.portrait{width:70px;height:90px;image-rendering:pixelated;background:#0e2139;border:1px solid #4a6488}.dialog-copy{font-size:16px;line-height:1.95;white-space:pre-line;color:#edf0e8;margin:0;min-height:62px}.dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:17px}.dialog-actions small{margin-right:auto;color:#94acc5;font-size:10px}.rpg-button{background:#203d61;border:1px solid #8699b4;padding:10px 16px;min-height:43px;font-size:12px;position:relative}.rpg-button:hover{background:#355379}.rpg-button.primary{background:#e0c181;color:#202a32;border-color:#f7dfaa}.rpg-button.primary:hover{background:#eed396}.menu-title{color:#efcf8c;font-weight:normal;font-size:24px;margin:5px 0}.menu-sub{color:#a7bbd1;font-size:12px;line-height:1.8;margin:8px 0 20px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.menu-grid .rpg-button{text-align:left;padding:14px}.menu-grid .rpg-button:before{content:"▸";color:#e2c586;margin-right:12px}.help-list{font-size:14px;line-height:2;color:#d5dfeb;padding-left:22px}.note{border-left:2px solid #c2aa73;padding:9px 14px;background:#0e2034;color:#b1c4da;font-size:12px;line-height:1.85;margin-top:18px}.check-list{list-style:none;padding:0;font-size:14px;line-height:2.4}.check-list span{color:#e4ca89;margin-right:10px}.dialog-quote{font-size:19px;color:#e6d6a6;line-height:1.9;margin:10px 0}.screenreader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:800px){#app{padding:0 12px}.topbar{height:61px}.brand{font-size:11px;letter-spacing:1.5px}.brand small{font-size:9px}.brand-mark{font-size:26px}.edition{display:none}.bottom-bar{height:42px}.demo-label{display:none}.key-guide{gap:10px;font-size:9px}.location{top:15px;left:16px}.location h1{font-size:20px}.location-icon{display:none}.quest{top:15px;right:70px;min-width:0;padding:9px 12px}.quest p{font-size:10px}.quest small{font-size:8px}.top-actions{top:15px;right:13px}.location p{display:none}.rpg-panel{padding:18px}.dialog-copy{font-size:15px}#modal{padding:16px}}@media(pointer:coarse),(max-width:600px){.touch-controls{display:flex}.key-guide{display:none}.location small{font-size:7px;letter-spacing:1px}.location h1{font-size:19px}.quest{top:83px;left:16px;right:auto;background:#14271aca;max-width:220px}.quest-dots{display:none}.quest p{margin-bottom:0}.quest small{display:none}#near{bottom:175px;font-size:11px}#near kbd{display:none}#toast{bottom:185px}.dialog-layout{grid-template-columns:48px 1fr;gap:12px}.portrait{width:48px;height:68px}.dialog-copy{font-size:14px;line-height:1.9}.dialog-header h2{font-size:16px}.dialog-actions{flex-wrap:wrap}.dialog-actions small{font-size:9px}.dialog-quote{font-size:17px}#arrival{width:95%}#arrival strong{font-size:36px}.rpg-panel{max-height:95%}.menu-grid{grid-template-columns:1fr 1fr}.menu-grid .rpg-button{font-size:11px;padding:12px 8px}.bottom-bar{font-size:9px}}@media(max-height:500px){.topbar{height:45px}.brand small,.bottom-bar,.location p,.quest{display:none}#app{padding:0 8px 8px}.location{top:12px}.location h1{font-size:16px}.touch-controls{bottom:10px}.dpad{grid-template-columns:36px 36px 36px;grid-template-rows:36px 36px 36px}.rpg-panel{max-height:100%}.dialog-copy{font-size:13px;line-height:1.65}.dialog-header{margin-bottom:6px}#modal{padding:12px}.dialog-actions{margin-top:8px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Revision 2: edge-to-edge world, transient HUD, character setup and Thai wrapping. */
html,body{width:100%;height:100%;overscroll-behavior:none}
#app{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;padding:0}
.topbar,.bottom-bar{display:none}
#game{position:absolute;inset:0;border:0;box-shadow:none}
.location,.quest{transition:opacity .35s;pointer-events:none}
.hud-hidden .location,.hud-hidden .quest{opacity:0;visibility:hidden}
.top-actions{right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));flex-direction:row}
.top-actions button{width:44px;height:44px;background:#13271d9c;border-radius:4px}
.quest{right:130px}
.location{left:max(22px,env(safe-area-inset-left));top:max(22px,env(safe-area-inset-top))}
#near{bottom:max(24px,env(safe-area-inset-bottom))}
.rpg-panel{font-family:Tahoma,Thonburi,"Noto Sans Thai",sans-serif}
.dialog-copy,.dialog-quote,.menu-sub,.note,.help-list{word-break:normal;overflow-wrap:normal;line-break:auto;hyphens:none;letter-spacing:normal}
.dialog-copy{font-size:18px;line-height:1.95;text-align:start}
.dialog-actions small{white-space:normal;line-height:1.7}
#modal[data-mode="setup"]{align-items:center;background:#08190ed9;backdrop-filter:blur(4px)}
#modal[data-mode="setup"] .rpg-panel{width:min(880px,100%);max-height:100%;background:linear-gradient(140deg,#213847f7,#102532fc);padding:28px}
.setup-intro small{font:10px Georgia,serif;letter-spacing:3px;color:#c8b782}
.setup-intro h2{font-size:27px;font-weight:normal;color:#f0d79a;margin:12px 0}
.setup-intro p{font-size:13px;color:#c5cbbd;line-height:1.8}
.setup-body{display:grid;grid-template-columns:1.3fr 1fr;gap:26px;margin-top:22px}
.appearance-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.appearance-card{background:#0d2031;border:1px solid #667c89;min-width:0;display:flex;align-items:center;flex-direction:column;padding:10px}
.appearance-card[aria-pressed=true]{border:2px solid #ecd28b;background:#304236;padding:9px}
.appearance-card canvas{width:64px;height:80px;image-rendering:pixelated}
.appearance-card strong{font-size:13px;font-weight:normal;margin:6px 0}
.appearance-card small{font-size:10px;color:#bac5bd}
.profile-form{display:flex;flex-direction:column;gap:8px;min-width:0}
#chosenPreview{align-self:center;width:80px;height:100px;image-rendering:pixelated}
.profile-form label{font-size:13px;color:#efe0b8}
.profile-form input{width:100%;min-height:46px;padding:10px 12px;background:#0b1d2a;border:1px solid #879582;color:#f5edda;font:16px Tahoma,Thonburi,sans-serif}
.profile-form small{font-size:10px;line-height:1.6;color:#b8c5bf}
.profile-form fieldset{margin:12px 0 0;border:0;padding:0}.profile-form legend{font-size:12px;margin-bottom:10px}
.charm-options{display:flex;gap:8px;margin-bottom:7px}.charm-options button{width:44px;height:40px;background:#172c3d;border:1px solid #758794}.charm-options button[aria-pressed=true]{border:2px solid #efd18a;background:#344631}
.charm-options i{display:inline-block;width:12px;height:12px;transform:rotate(45deg)}
.setup-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #7b8a7955;margin-top:22px;padding-top:17px}
.setup-footer p{font-size:10px;line-height:1.8;color:#acbeb3;max-width:310px}.setup-footer>div{display:flex;gap:8px}
.error{color:#ffc9b2;font-size:12px;margin:0;line-height:1.7}
.profile-summary{color:#f0d292;font-size:14px;overflow-wrap:anywhere}
#panel input:focus-visible{outline:2px solid #efd18a;outline-offset:3px}
@media(max-width:600px){
 .location{top:20px;left:18px}.quest{top:82px;left:18px;right:auto}.top-actions{top:18px;right:15px}
 #modal{padding:14px}.dialog-copy{font-size:16px;line-height:1.95}
 #near{bottom:175px}#modal[data-mode="setup"] .rpg-panel{padding:18px}
 .setup-intro h2{font-size:22px;margin:9px 0}.setup-intro p{font-size:11px;margin:0}
 .setup-body{grid-template-columns:1fr;gap:16px;margin-top:16px}
 .appearance-grid{grid-template-columns:repeat(4,1fr);gap:6px}
 .appearance-card{padding:5px}.appearance-card[aria-pressed=true]{padding:4px}
 .appearance-card canvas{width:44px;height:58px}.appearance-card strong{font-size:10px}.appearance-card small{display:none}
 #chosenPreview{display:none}.profile-form{gap:6px}.profile-form fieldset{margin-top:8px}
 .setup-footer{flex-direction:column;align-items:stretch;gap:8px;margin-top:15px;padding-top:10px}.setup-footer p{margin:0}.setup-footer>div{justify-content:flex-end}
}
@media(max-height:500px){
 #modal[data-mode="setup"]{align-items:flex-start}.setup-body{margin-top:10px}.setup-intro h2{font-size:20px}
 .setup-intro p{margin:0}.appearance-card canvas{width:40px;height:52px}#chosenPreview{display:none}
 .setup-footer{margin-top:10px}.dialog-copy{font-size:15px}
}

/* Day-one lessons and travel journal. */
.quest-label{display:block;color:#f3d99f;font-size:17px;line-height:1.9;margin:15px 0 10px}
#questAnswer,textarea[data-final]{display:block;width:100%;resize:vertical;min-height:130px;max-height:40dvh;padding:14px;background:#0b1a30;border:1px solid #8b9db4;color:#f4f0e3;font:16px/1.85 Tahoma,Thonburi,sans-serif;word-break:normal}
#questAnswer:focus-visible,textarea[data-final]:focus-visible{outline:2px solid #efd18a;outline-offset:3px}
.save-hint{font-size:11px;color:#b5c6d9;line-height:1.8;margin:15px 0 0}
.action-confirm{display:flex;align-items:flex-start;gap:10px;line-height:1.9;font-size:14px;margin:18px 0}
.action-confirm input{width:20px;height:20px;flex-shrink:0;accent-color:#e0c181;margin-top:3px}
.previous-answer{margin:12px 0;color:#b4c7de;font-size:13px;line-height:1.9}.previous-answer summary{cursor:pointer;padding:8px 0}.previous-answer p{white-space:pre-wrap;overflow-wrap:anywhere}
.journal-stages{list-style:none;padding:0;margin:16px 0}.journal-stages>li{padding:16px 0;border-top:1px solid #8297b944}.journal-stages .locked{color:#9babc0}.journal-stage-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.journal-stage-head strong{color:#e2c586;font-size:15px;font-weight:normal}.journal-stage-head small{font-size:11px;color:#b5c6d9;line-height:1.8}.journal-stages button{margin-top:10px}.answer-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.95;color:#ecebdd}.answer-text>span:first-child{display:block;font-size:11px;color:#b5c6d9}.draft-label{font-size:11px;color:#e0c181}.completion-seal{text-align:center;letter-spacing:12px;color:#f0cd78;font-size:23px;padding:18px}
#modal[data-mode="journal"] .rpg-panel,#modal[data-mode="quest"] .rpg-panel{max-height:100%}
@media(max-width:600px){.quest-label{font-size:16px}.dialog-actions .rpg-button{padding:10px 12px}.completion-seal{letter-spacing:6px}#modal[data-mode="quest"]{padding:10px}}

/* Title screen: the village becomes the backdrop before character creation. */
.title-active .location,.title-active .quest,.title-active .top-actions,.title-active .touch-controls{visibility:hidden}
#modal[data-mode="title"]{align-items:center;background:linear-gradient(90deg,#061510d9,#0b1d24b8,#061510d9);padding:22px}
#modal[data-mode="title"] .rpg-panel{max-height:100%;width:min(700px,100%);padding:24px;background:transparent;border:0;box-shadow:none;text-align:center;scrollbar-width:thin}
#modal[data-mode="title"] .rpg-panel:before{display:none}
.title-emblem{font-size:44px;color:#e7ce87;text-shadow:0 0 26px #efcd8177;margin-bottom:12px}
.title-eyebrow{font:10px Georgia,serif;letter-spacing:3px;color:#e0d6b7}
.title-logo{font:clamp(32px,5vw,66px)/1.05 Georgia,serif;letter-spacing:5px;color:#f7e7b7;text-shadow:2px 3px #18241f,0 3px 20px #0008;margin:19px 0 14px}
.title-logo span{font-size:.84em;letter-spacing:3px}
.title-screen h2{font-size:clamp(19px,3vw,26px);font-weight:normal;color:#f7e5b4;margin:0 0 9px;line-height:1.7}
.title-tagline{font-size:13px;line-height:1.9;color:#c5d0bf;margin:0 0 25px}
.title-menu{width:min(310px,100%);display:grid;gap:9px;margin:0 auto}
.title-menu .rpg-button{min-height:46px;background:#122b38d9;border-color:#9ca794}
.title-menu .rpg-button.primary{background:#e0c181;color:#202a32;border-color:#f7dfaa}
.title-menu .rpg-button:focus-visible{outline:2px solid #ffe5a5;outline-offset:4px}
.title-menu .rpg-button:disabled{opacity:.45}
.title-sound{margin:18px 0 0;border:0;border-bottom:1px solid #9eab9255;padding:8px 16px;background:transparent;color:#d2d7bb;font-size:12px;min-height:40px}
.title-transfer{display:block;margin:2px auto 0;border:0;background:transparent;color:#94a99a;font-size:10px;text-decoration:underline;text-underline-offset:3px;padding:6px 10px}
.title-key-hint{font-size:10px;color:#bac7b3;line-height:1.8;margin:10px 0 18px}
.title-edition{font-size:10px;color:#9bab9b}
@media(max-width:600px){#modal[data-mode="title"]{padding:15px}.title-logo{font-size:39px;letter-spacing:3px}.title-menu{width:100%;max-width:290px}.title-eyebrow{font-size:8px;letter-spacing:2px}.title-screen h2{font-size:20px}.title-emblem{font-size:37px}}
@media(max-height:560px){#modal[data-mode="title"] .rpg-panel{padding:10px}.title-emblem,.title-eyebrow,.title-tagline,.title-key-hint{display:none}.title-logo{font-size:32px;margin:8px 0}.title-screen h2{font-size:18px}.title-menu{gap:6px}.title-menu .rpg-button{min-height:40px}.title-sound{margin:6px 0}.title-edition{display:block}}

/* Keep the complete title menu visible at standard laptop heights. */
#modal[data-mode="title"] .rpg-panel{padding:14px}
.title-emblem{font-size:36px;margin-bottom:8px}
.title-logo{font-size:clamp(32px,5vw,60px);margin:14px 0 12px}
.title-key-hint{margin-bottom:12px}
@media(max-width:600px){.title-logo{font-size:39px}}
@media(max-height:560px){.title-logo{font-size:32px;margin:8px 0}}

/* Character selection: visual choices, with only essential copy. */
.setup-footer{justify-content:flex-end}
.profile-preview{display:flex;align-items:center;justify-content:center;min-height:140px;background:radial-gradient(ellipse at bottom,#64795444,transparent 70%);border-bottom:1px solid #b5c49233}
#chosenPreview{display:block;width:100px;height:124px}
.appearance-card canvas{width:76px;height:94px}
.charm-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.charm-options button{width:100%;height:auto;min-height:72px;padding:7px 3px;display:flex;flex-direction:column;align-items:center;gap:3px;border-radius:3px}
.charm-options canvas{width:36px;height:36px;image-rendering:pixelated}
.charm-options span{font-size:11px;white-space:nowrap}
.charm-options button[aria-pressed=true]{box-shadow:inset 0 0 15px #f6d17b22}
@media(max-width:600px){.profile-preview{min-height:82px;position:absolute;right:18px;top:65px;width:65px;border:0;background:none}#chosenPreview{display:none}.profile-preview{display:none}.appearance-card canvas{width:48px;height:64px}.charm-options button{min-height:68px}.setup-footer{align-items:flex-end}}
@media(max-height:500px){.profile-preview{display:none}}
/* Day-end feedback remains on screen after saving. */
#modal[data-mode="complete"]{align-items:center;background:#08182099}
#modal[data-mode="complete"] .rpg-panel{max-height:100%;width:min(760px,100%)}
.completion-banner{display:flex;align-items:center;gap:20px;margin:22px 0}
.completion-star{font-size:48px;color:#f5d18a;text-shadow:0 0 22px #f2d07a44}
.completion-banner h3{font-size:24px;font-weight:normal;color:#f8dda1;margin:0 0 6px}
.completion-banner p{margin:0;font-size:13px;line-height:1.8;color:#becfdb}
.completion-path{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0;border-block:1px solid #8297b944}
.completion-path span{font-size:11px;line-height:1.8;color:#e6d19e}
.day-reflection{margin:16px 0}
.day-reflection details{padding:9px 12px;background:#0b1d34;margin-top:7px;border-left:2px solid #9eb0bf}
.day-reflection summary{cursor:pointer;font-size:13px;color:#d8c699;line-height:1.8}
.day-reflection p{font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 3px;max-height:190px;overflow:auto}
.completion-save{padding:12px 14px;color:#ead49e;background:#79643422;font-size:13px;line-height:1.8}
.completion-save.is-saved{color:#b8e6cd;background:#35785433;border:1px solid #81b49a66}
.next-destination{margin-top:15px;display:flex;flex-direction:column;gap:6px;line-height:1.8;padding-left:14px;border-left:2px solid #8b9eb7}
.next-destination small,.next-destination span{font-size:11px;color:#a7bacd}
.next-destination strong{font-size:15px;color:#e2e7dd;font-weight:normal}
@media(max-width:600px){.completion-banner{gap:12px;margin:14px 0}.completion-banner h3{font-size:20px}.completion-star{font-size:36px}.completion-path{gap:5px 12px}.completion-path span{font-size:10px}.day-reflection p{font-size:14px;max-height:130px}.next-destination strong{font-size:14px}}

.day-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 20px}.day-tabs button:disabled{opacity:.45}

.world-route{padding-left:22px;display:grid;gap:12px}.world-route li strong,.world-route li small{display:block}.world-route li.current{color:#f6d17b}
.arc-day,.evidence-picker{border:1px solid #647386;padding:12px;margin:12px 0}.arc-day p,.evidence-card p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
.evidence-card{padding:12px 0;border-bottom:1px solid #647386}.evidence-card:last-child{border-bottom:0}.evidence-card p{max-height:180px;overflow:auto}


.onward-message{margin:16px 0;padding:14px 16px;border-left:2px solid #e0c181;background:#101e32}.onward-message strong{color:#f4d590;font-size:14px}.onward-message p{font-size:14px;line-height:1.9;margin:7px 0 0;color:#e1e8e4}

#modal[data-mode=arc] .rpg-panel{max-height:100%}.earlier-arc{margin-top:20px;border-top:1px solid #647795;padding-top:14px}.earlier-arc>summary{cursor:pointer;color:#f4d590}.day-tabs{flex-wrap:wrap}

/* AI companion feedback and local save portability. */
.ai-feedback{margin:18px 0;padding:18px 20px;border:1px solid #9bb6bb77;background:linear-gradient(135deg,#15344be8,#13283ce8);box-shadow:inset 3px 0 #d8bd78}
.ai-feedback small{display:block;color:#e7cb85;font-size:10px;letter-spacing:1px;margin-bottom:10px}
.ai-feedback h3{font-size:12px;font-weight:normal;color:#b9d6d9;margin:14px 0 4px}
.ai-feedback p{font-size:14px;line-height:1.9;color:#edf0e8;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.ai-feedback.empty,.ai-feedback.stale{box-shadow:inset 3px 0 #7895a0}.ai-feedback.stale{border-style:dashed}
.feedback-loading{display:grid;place-items:center;text-align:center;min-height:180px;color:#c8d9dc}
.feedback-loading span{font-size:40px;color:#e2c27b;animation:pulse 1.5s infinite}.feedback-loading p{font-size:13px}
.turnstile-shell{display:grid;place-items:center;min-height:72px;margin:18px 0;color:#b9c9c6}.privacy-copy{line-height:1.8}.privacy-copy h3{font:normal 14px Georgia,serif;color:#e7cb85;margin:20px 0 5px}.privacy-copy p{font-size:13px;color:#d9e1dc;margin:0}.privacy-copy a{color:#f0d79a}.privacy-copy code{font-family:monospace;color:#b9d6d9}
.title-menu .recovery{border-color:#d5b96e;color:#f3d894}
@media(max-width:600px){.ai-feedback{padding:14px}.ai-feedback p{font-size:13px}.dialog-actions [data-feedback]{flex:1 1 100%}}
