:root{font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:#fff8e8;--accent:#e5c98d;--ink:#34453f}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#233650}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:5px}a{color:inherit;text-decoration:none}#world{position:fixed;inset:0}canvas{display:block;touch-action:none}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#162b3845,transparent 45%),linear-gradient(0deg,#162b3850,transparent 28%)}header{position:fixed;top:28px;left:38px;right:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:13px;font-size:33px;align-items:center}.brand span{font-size:10px;letter-spacing:2px;font-weight:650}.brand small{display:block;font-size:10px;letter-spacing:.6px;font-weight:400;margin-top:8px;opacity:.75}.top-actions{display:flex;align-items:center;gap:10px}.top-actions a,.top-actions button{font-size:11px;border:1px solid #ffffff30;border-radius:30px;padding:12px 17px;background:#19334226;backdrop-filter:blur(10px)}.world-info{position:fixed;left:55px;top:150px;width:270px;text-shadow:0 2px 24px #19334240;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:2.5px;color:var(--accent);font-weight:650}h1{font-family:Georgia,"AppleMyungjo","Batang",serif;font-size:66px;font-weight:400;letter-spacing:-3px;margin:17px 0 10px}#world-subtitle{font-size:16px;letter-spacing:.5px;opacity:.9;margin:0}.small-rule{width:35px;height:1px;background:var(--accent);margin:27px 0}#world-intro{font-size:12px;line-height:1.9;max-width:230px;opacity:.85}#world-reference{font-size:10px;opacity:.6}#story-steps{padding:0;margin:29px 0;list-style:none;pointer-events:auto}#story-steps button{display:flex;gap:11px;align-items:center;background:transparent;padding:10px 0;width:100%;text-align:left;font-size:11px;color:inherit}#story-steps b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid #ffffff45;font-size:9px;font-weight:400}#story-steps .read b{background:var(--accent);border-color:var(--accent);color:#34453f}#story-steps button:hover span{text-decoration:underline;text-underline-offset:5px}.journey-title{position:fixed;right:40px;top:160px;font-size:9px;letter-spacing:2.5px;text-align:right;opacity:.7;pointer-events:none}.journey-title span{display:block;letter-spacing:1px;font-size:10px;margin-top:10px}footer{position:fixed;left:38px;right:38px;bottom:28px;display:flex;align-items:end;justify-content:space-between;gap:20px}footer>button{background:#1c38442b;border:1px solid #fff4;border-radius:30px;font-size:11px;padding:14px 20px;backdrop-filter:blur(10px)}footer>button:disabled{opacity:.3;cursor:default}.bottom-center{text-align:center;position:absolute;left:50%;transform:translateX(-50%)}#travel-status{display:block;margin-bottom:15px;font-size:10px;text-shadow:0 1px 6px #1236;letter-spacing:.4px}.action-bar{display:flex;background:#f7f5eadb;border:1px solid #fff7;border-radius:30px;padding:6px;color:var(--ink);backdrop-filter:blur(12px)}.action-bar button{white-space:nowrap;border-radius:30px;background:transparent;font-size:11px;padding:12px 18px}.action-bar button.selected{background:#d9dfca}#nearby{position:fixed;left:50%;bottom:145px;transform:translateX(-50%);text-align:center}#nearby>span{display:block;font-size:11px;margin-bottom:11px;text-shadow:0 2px 10px #183a3d}#read-story{font-size:12px;padding:14px 24px;border-radius:30px;background:#faf4df;color:#405048;box-shadow:0 4px 30px #16303920}#notice{position:fixed;left:50%;top:95px;transform:translateX(-50%);border-radius:25px;padding:12px 22px;background:#f6f2e9e8;color:var(--ink);font-size:12px;opacity:0;pointer-events:none;transition:opacity .3s}#notice.show{opacity:1}dialog{background:#faf7ed;color:var(--ink);border:1px solid #fff;border-radius:24px;padding:37px;width:min(510px,calc(100% - 30px));max-height:85dvh;overflow:auto;box-shadow:0 25px 100px #12293355}dialog::backdrop{background:#142b3b55;backdrop-filter:blur(7px)}dialog .eyebrow{color:#938162}dialog h2{font-family:Georgia,"AppleMyungjo",serif;font-size:30px;font-weight:400;letter-spacing:-1px;margin:20px 0}.close{position:absolute;right:16px;top:12px;font-size:26px;background:transparent;color:#899482}.dialog-lead{font-size:13px;line-height:1.9;color:#74816e}.primary{padding:13px 20px;background:#425b4e;color:white;border-radius:30px;font-size:12px}#story-body{font-size:16px;line-height:2.1;word-break:keep-all}#story-reference{font-size:11px;color:#7c8b73;margin-top:25px}.source-note{font-size:10px;line-height:1.8;color:#939b86;border-top:1px solid #e0e4d5;padding-top:15px;margin:23px 0}#map{width:min(960px,calc(100% - 30px));padding:40px}#world-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.world-card{position:relative;min-height:127px;background:#eeeadf;color:var(--ink);border:1px solid #dedfce;border-radius:14px;text-align:left;padding:18px;overflow:hidden}.world-card:before{content:"";position:absolute;right:-20px;bottom:-25px;width:110px;height:110px;border-radius:50%;background:var(--card);opacity:.3}.world-card.active{border-color:#58745e;box-shadow:inset 0 0 0 1px #58745e}.world-card small{font-size:9px;letter-spacing:1.5px;color:#8f937e}.world-card strong{font-family:Georgia,"AppleMyungjo",serif;display:block;font-size:22px;font-weight:400;margin:11px 0 5px}.world-card span{font-size:10px;color:#818b78}.world-card em{position:absolute;right:14px;top:17px;font-style:normal;font-size:9px;color:#7b8b73}.garden-link{display:block;font-size:12px;color:#76836e;text-align:center;margin-top:23px}label{display:block;font-size:11px;margin:23px 0 10px}textarea{width:100%;font:inherit;font-size:14px;line-height:1.8;padding:14px;border:1px solid #d9dfcc;background:#fffdf6;border-radius:12px;resize:vertical;color:var(--ink)}.form-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:12px}.form-bottom small{font-size:10px;color:#88927f}#entries article{border-top:1px solid #dfe3d4;margin-top:23px;padding-top:15px}#entries small{font-size:10px;color:#8c957f}#entries p{font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}#entries button{float:right;background:transparent;color:#8c957f;font-size:10px}#loading,.nojs{position:fixed;inset:0;background:#233650;display:grid;place-items:center;color:#e1d7ba;font-size:13px;z-index:100;padding:30px;text-align:center}.day{color:#344b46}.day .vignette{background:linear-gradient(90deg,#faf5dd45,transparent 42%),linear-gradient(0deg,#e8efda55,transparent 25%)}.day .eyebrow{color:#7d7965}.day .top-actions a,.day .top-actions button,.day footer>button{background:#faf6e8bb;border-color:#ffffff88}.day #story-steps b{border-color:#6e806b66}.day #story-steps .read b{border-color:var(--accent)}.day .small-rule{background:#8c9276}.day #travel-status{color:#4e6557;text-shadow:0 1px 8px #fffc}
@media(max-width:760px),(pointer:coarse){header{top:18px;left:18px;right:18px;gap:8px}.brand{font-size:25px;gap:8px}.brand span{font-size:8px;letter-spacing:1px}.brand small{font-size:8px;letter-spacing:0}.top-actions{gap:6px}.top-actions>a{display:none}.top-actions button{font-size:10px;padding:10px 12px}#help-open{padding:10px 12px}.world-info{left:23px;top:99px;width:200px}h1{font-size:45px;margin:12px 0 8px}.eyebrow{font-size:8px;letter-spacing:1.7px}#world-subtitle{font-size:12px}.small-rule{margin:16px 0}#world-intro{font-size:10px;max-width:190px;line-height:1.8}#world-reference{font-size:9px}#story-steps{margin:17px 0}#story-steps button{font-size:9px;padding:7px 0;gap:8px}#story-steps b{width:20px;height:20px;font-size:8px}.journey-title{display:none}footer{left:16px;right:16px;bottom:22px;height:115px;align-items:flex-start}footer>button{font-size:9px;padding:10px 13px}.bottom-center{bottom:0}#travel-status{font-size:9px;margin-bottom:12px;white-space:nowrap;max-width:300px;overflow:hidden;text-overflow:ellipsis}.action-bar button{font-size:10px;padding:12px 14px}#nearby{bottom:159px;width:80%}#nearby>span{font-size:10px}#read-story{font-size:11px;padding:12px 20px}dialog{padding:29px 24px}dialog h2{font-size:26px}#story-body{font-size:14px}#map{padding:30px 22px}#world-cards{grid-template-columns:repeat(2,1fr);gap:9px}.world-card{padding:14px;min-height:115px}.world-card strong{font-size:20px}.world-card span{font-size:9px}.world-card em{right:9px;font-size:8px}.world-card small{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
#world-intro,#story-body,.dialog-lead{word-break:keep-all}

/* Bethlehem environment edition */
.bethlehem .vignette{background:linear-gradient(90deg,#101b3080,transparent 32%),linear-gradient(0deg,#101b3066,transparent 22%)}
.bethlehem .world-info{top:120px;width:235px}.bethlehem h1{font-size:57px}.bethlehem #world-intro{max-width:200px}
#places{position:fixed;right:38px;bottom:112px;width:160px;padding:16px;background:#17243b99;border:1px solid #d7c39a30;border-radius:15px;backdrop-filter:blur(12px)}
#places[hidden]{display:none}#places p{font-size:10px;color:#dec89e;margin:0 0 12px;letter-spacing:1px}#places button{display:block;width:100%;text-align:left;background:transparent;padding:10px 0;border-top:1px solid #ffffff15;font-size:11px;color:#e4dfd2}#places button:hover{color:#ffcf86}
@media(max-width:760px),(pointer:coarse){.bethlehem .world-info{top:91px;left:22px;width:180px}.bethlehem h1{font-size:38px}.bethlehem #world-intro,.bethlehem .small-rule,.bethlehem #world-reference{display:none}.bethlehem #story-steps{margin:12px 0}.bethlehem #story-steps button{padding:5px 0}.bethlehem #world-subtitle{font-size:11px}#places{right:14px;bottom:155px;width:120px;padding:11px}#places p{font-size:9px;letter-spacing:0}#places button{font-size:10px;padding:8px 0}}
@media(max-height:600px){.bethlehem #world-intro,.bethlehem .small-rule,.bethlehem #world-reference{display:none}.bethlehem .world-info{top:75px}.bethlehem h1{font-size:32px;margin:6px 0}#places{bottom:85px}.bethlehem #story-steps{margin:8px 0}}

#sound-settings input[type=range]{width:100%;accent-color:#65836c}#sound-settings output{float:right}#sound-settings input[type=checkbox]{accent-color:#65836c}#places-toggle{display:none}#location-label{position:fixed;bottom:112px;left:38px;font-size:11px;letter-spacing:1px;color:var(--accent);text-shadow:0 1px 8px #15233b}#movement-pad{display:none}
#cinematic[hidden]{display:none}#cinematic{position:fixed;inset:0;z-index:30;background:linear-gradient(#0c172ccc,transparent 24%,transparent 55%,#0c172cee);color:#f8eddb;pointer-events:none}.cinema-top{display:flex;justify-content:space-between;align-items:start;padding:35px 45px}.cinema-top h2{font-size:24px;font-weight:400;margin:10px 0}.cinema-top button,.cinema-caption button{pointer-events:auto;background:#24354cba;border:1px solid #bdb69e60;padding:12px 18px;border-radius:24px;font-size:12px}.cinema-caption{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);width:min(680px,90%);text-align:center}#cinema-kind{font-size:10px;letter-spacing:2px;color:#d1b383}#cinema-subtitle{font-size:20px;line-height:1.8;word-break:keep-all;text-shadow:0 2px 10px #000}#cinema-source{font-size:11px;color:#d1c7b5}#cinema-progress{display:block;width:150px;height:2px;margin:15px auto;accent-color:#d6b77f}#cinema-note{font-size:10px;opacity:.7;display:block}#cinema-actions{margin-top:18px}#cinema-actions[hidden]{display:none}.cinematic header,.cinematic footer,.cinematic .world-info,.cinematic #places,.cinematic #places-toggle,.cinematic #nearby,.cinematic #movement-pad,.cinematic #location-label,.cinematic .journey-title{visibility:hidden}.cinematic #world{pointer-events:none}
@media(max-width:760px),(pointer:coarse){.top-actions{gap:4px}.top-actions button{font-size:9px;padding:10px 8px}.brand small{display:none}.brand span{font-size:7px}.brand{gap:4px;font-size:20px}#places-toggle{display:block;position:fixed;right:16px;bottom:163px;background:#21334bcc;border:1px solid #d8c59c50;padding:11px 16px;border-radius:24px;font-size:11px}.bethlehem #places{display:none;bottom:212px}.bethlehem.places-open #places{display:block}body:not(.bethlehem) #places-toggle{display:none}#movement-pad{position:fixed;display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:4px;bottom:160px;left:16px}#movement-pad button{background:#23374c99;border:1px solid #fff4;border-radius:50%;font-size:18px;touch-action:none}#movement-pad button:first-child{grid-column:2}#movement-pad button:nth-child(2){grid-row:2;grid-column:1}#movement-pad button:nth-child(3){grid-row:2;grid-column:2}#movement-pad button:nth-child(4){grid-row:2;grid-column:3}#location-label{left:18px;bottom:263px;font-size:10px}.cinema-top{padding:20px}.cinema-top h2{font-size:18px}.cinema-top button{padding:10px;font-size:10px}.cinema-caption{bottom:25px}#cinema-subtitle{font-size:16px}#cinema-actions button{padding:10px 12px;font-size:10px}}
@media(max-height:500px){#movement-pad{bottom:70px;left:12px}#places-toggle{bottom:75px}.bethlehem #places{bottom:115px;max-height:180px;overflow:auto}#location-label{display:none}.cinema-top{padding:15px 25px}#cinema-subtitle{font-size:15px;margin:5px}#cinema-note{display:none}.cinema-caption{bottom:15px}}

@media(max-height:500px) and (pointer:coarse){footer{height:55px;bottom:14px}#travel-status{display:none}#movement-pad{bottom:80px}#places-toggle{bottom:80px}.world-info .eyebrow{margin:0 0 5px}.world-info #world-subtitle{display:none}.world-info h1{font-size:26px;margin:5px 0}.world-info #story-steps{margin:4px 0}.world-info #story-steps button{padding:2px 0}.world-info #story-steps b{width:18px;height:18px}}
