/* The viewport is the game. Scene geometry and interaction layers share one canvas. */
body.game{margin:0;overflow:hidden;background:#080e12;color:#f6eedc;--ink:#f6eedc;--muted:#b8c7c4;--paper:#152b32;--white:#203940;--line:#ffffff24;--teal:#86c9bd;--mint:#183d43;--coral:#e9a78c;font-size:14px}
.game button{touch-action:manipulation}.game #app{width:100%;height:100dvh}.game .game-shell{width:100vw;height:100dvh;display:grid;place-items:center;position:relative;isolation:isolate;overflow:hidden;background:#070c10}.ambient-scene{position:absolute;inset:-28px;background-position:center;background-size:cover;filter:blur(20px) brightness(.23);z-index:-1}.game-viewport{position:relative;width:min(100vw,177.7778dvh);height:min(100dvh,56.25vw);overflow:hidden;isolation:isolate;background:#101e23;box-shadow:0 0 80px #0009}.game-world{position:absolute;inset:0;overflow:hidden}.game-world .map-image,.game-world .map-paths,.game-world .scene-art,.game-world .door-hotspot{position:absolute;inset:0;width:100%;height:100%}.game-world .map-image,.game-world .scene-art img{object-fit:fill;filter:none}.game-world .map-paths path,.game-world .door-hotspot path{stroke:none!important;fill:transparent;cursor:pointer;vector-effect:non-scaling-stroke}.game-world .map-paths g:hover path:first-child,.game-world .door-hotspot a:hover path:first-child{stroke:none!important;fill:#fff4ce10}.game-world .map-paths g:focus-visible path:first-child,.game-world .door-hotspot a:focus-visible path:first-child{stroke:none!important;fill:#e8f6ce45}.game-world .map-paths g:focus,.game-world .door-hotspot a:focus{outline:0}.game-world .map-paths .touch-path,.game-world .door-hotspot .exit-touch{fill:none!important;stroke:transparent!important;pointer-events:stroke;stroke-width:16!important}
.game button:focus-visible,.game a:focus-visible{outline:2px solid #ffe4ac;outline-offset:4px}.game .icon{flex-shrink:0}.illustrated-icon{object-fit:contain;stroke:none;fill:none}.game-hud{position:absolute;z-index:12;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:15px 20px 50px;background:linear-gradient(#07172091,transparent);pointer-events:none}.game-hud>*{pointer-events:auto}.hud-location{display:flex;align-items:center;gap:9px;min-width:220px}.hud-action{position:relative;display:inline-grid;place-items:center;width:57px;height:61px;padding:0;background:transparent;border:0;flex-shrink:0;border-radius:12px}.hud-action>.icon{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 3px #0005)}.hud-action:hover{transform:translateY(-3px);filter:brightness(1.09)}.hud-tooltip{position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);white-space:nowrap;padding:5px 9px;background:#132a34ed;border-radius:5px;box-shadow:0 3px 10px #0003;font-size:11px;pointer-events:none;opacity:0;transition:opacity .15s;color:#fff3dc}.hud-action:hover .hud-tooltip,.hud-action:focus-visible .hud-tooltip{opacity:1}.location-bar,.day-bar,.money-bar{background:linear-gradient(#29434de8,#10242deb);color:#f8f1df;box-shadow:0 2px 5px #0004,inset 0 1px #fff2;border:0;border-radius:4px;text-shadow:0 1px 2px #0007}.location-bar{display:block;min-width:210px;max-width:290px;padding:5px 13px;text-align:left;font-weight:600;font-size:14px;letter-spacing:.2px}.day-bar{display:table;margin-top:5px;padding:4px 11px;font-size:11px;min-width:120px}.day-bar span{color:#c8d6d1}.hud-time{min-width:142px;padding-top:1px}.time-symbols{display:flex;justify-content:space-around;align-items:center;gap:10px}.time-symbols>span{color:#9ebbb4;opacity:.55;filter:drop-shadow(0 1px 2px #0008)}.time-symbols>span.current{color:#ffd999;opacity:1}.time-symbols .icon{width:21px;height:21px}.time-segments{display:flex;gap:3px;margin:6px 0;border-radius:3px;padding:3px;background:#122b35e8;box-shadow:0 2px 4px #0005}.time-segments i{height:6px;flex:1;background:#5e858c}.time-segments i.active{background:#8ad4d0}.hud-energy{display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;text-shadow:0 1px 3px #000}.hud-energy .icon{width:19px;height:22px}.hud-energy .energy-track{width:88px;height:4px;background:#132a32aa}.hud-energy .energy-track i{background:#b7d29a}.hud-right{display:flex;align-items:flex-start;gap:15px}.money-bar{display:flex;gap:8px;align-items:center;min-width:100px;margin-top:5px;padding:4px 10px;font-size:13px;white-space:nowrap}.money-bar .icon{width:31px;height:24px}.hud-actions{display:flex;gap:5px}.hud-actions .hud-action:last-child{width:53px}.hud-bottom-left,.hud-bottom-right{position:absolute;z-index:11;bottom:14px;display:flex;gap:8px;align-items:center}.hud-bottom-left{left:22px}.hud-bottom-right{right:22px}.hud-bottom-left .hud-action,.hud-bottom-right .hud-action{width:35px;height:36px;border-radius:8px;background:#132a3294;padding:7px;box-shadow:0 2px 7px #0003}.hud-bottom-right .hud-action:has(.illustrated-icon){padding:0;background:transparent;box-shadow:none;width:46px;height:45px}.hud-bottom-left .hud-tooltip,.hud-bottom-right .hud-tooltip{top:auto;bottom:calc(100% + 7px)}.episode-caption{font-size:9px;letter-spacing:1.6px;text-shadow:0 1px 3px #0008;color:#e9e2d3bd}.game-languages{display:flex;gap:2px;border-radius:5px;background:#122932c7;padding:3px}.game-languages button{font-size:10px;padding:5px 6px;background:transparent;border:0;border-radius:3px;color:#abc2bc}.game-languages button.active{background:#edf1df;color:#294345}.game .hud-bottom-left .icon:not(img),.game .hud-bottom-right .icon:not(img){color:#f5e7c9}
.game-world .map-label{background:#17313cce;backdrop-filter:blur(5px);border:0;box-shadow:0 2px 7px #0004;border-radius:4px;padding:5px 9px;font-size:11px;color:#fff5e1;font-weight:500;text-shadow:0 1px 2px #0005}.game-world .map-label.locked{background:#192e38b8;color:#d3d8cb;font-size:10px}.game-world .map-label.current{background:#f0d299;color:#344c49;text-shadow:none}.game-world .map-label .icon{color:inherit}.game-world .map-label.quest:before{border:0;background:#e9b05e;box-shadow:0 2px 5px #0004;top:-23px;height:21px;width:19px;line-height:20px;color:#493f2d}.game .selected-location{z-index:14;inset:auto 25px 79px auto;transform:none;width:315px;background:#15313bee;border:1px solid #a9c1b340;backdrop-filter:blur(13px);color:#f3eddc;padding:23px;box-shadow:0 8px 35px #0005;border-radius:10px}.game .selected-location .eyebrow{font-size:10px;letter-spacing:1px;color:#c8d6bd}.game .selected-location h3{font-size:20px}.game .selected-location p{color:#c6d0bf;font-size:12px}.game .cost-line{color:#f0d3a4!important;font-size:11px!important}.game .close-pin{color:#efebd8}.game .primary{background:linear-gradient(#a3c8b4,#70a995);border:0;color:#173d37;min-height:43px;font-size:13px;font-weight:600;box-shadow:0 2px 0 #325b4f,0 3px 9px #0002;border-radius:6px}.game .secondary{background:#ffffff13;border:1px solid #d7e2cd33;color:#eee7d6;min-height:42px;font-size:13px}.game .primary:hover{filter:brightness(1.08)}.game .eyebrow{color:#e0bf84}.game .muted{color:#b2c4bd}.quest-tracker{position:absolute;z-index:10;bottom:71px;left:22px;display:flex;align-items:center;gap:5px;padding:9px 10px 9px 8px;border-radius:8px;background:#102936d6;backdrop-filter:blur(9px);box-shadow:0 3px 10px #0002;max-width:340px}.quest-summary{display:flex;align-items:center;gap:10px;background:transparent;border:0;text-align:left;padding:0;color:#f5eddc}.quest-dot{width:24px;height:29px;border-radius:8px 8px 8px 0;display:grid;place-items:center;background:#e7bb6d;color:#493f2e;font:bold 18px Georgia}.quest-summary small{display:block;font-size:8px;letter-spacing:1px;color:#c8d6bd;margin-bottom:3px}.quest-summary strong{font-size:12px;font-weight:500;max-width:250px;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.quest-guide{width:34px;height:36px;display:grid;place-items:center;background:#bdd7bb1c;border:0;border-radius:5px;margin-left:8px;color:#ffe5b0}.quest-guide .icon{width:17px}.game-world .scene-top{top:auto;bottom:15px;left:50%;transform:translateX(-50%);z-index:4}.game-world .scene-top button{background:#102b36bf;backdrop-filter:blur(8px);border:0;color:#e6efdf;font-size:10px;padding:7px 10px;border-radius:5px}.game-world .scene-top button[data-action=locationInfo]{display:none}.game-world .scene-top button[data-action=map]{display:none}.game-world .scene-actions{right:23px;bottom:82px;max-width:45%;gap:8px}.game-world .scene-actions button{background:#14333ed9;backdrop-filter:blur(10px);border:0;border-radius:7px;color:#f2ebd6;padding:11px 15px;font-size:12px;box-shadow:0 3px 9px #0003}.game-world .scene-actor{left:64%;top:51%}.game-world .actor-badge{min-height:0;width:auto;padding:12px 17px;border:0;border-radius:18px 18px 18px 3px;background:#183945e8;box-shadow:0 5px 20px #0004;color:#fbefd7;backdrop-filter:blur(8px)}.game-world .actor-badge .icon{display:none}.game-world .actor-badge strong{margin:0;font-size:15px}.game-world .actor-label{background:#f1d29b;border:0;color:#2f4c48;border-radius:15px;font-size:10px;padding:5px 10px}.game-world .collectible{padding:10px;border:0;filter:drop-shadow(0 4px 3px #0004)}.item-art{width:70px;height:70px;object-fit:contain;flex-shrink:0}.game-world .collectible .item-art{width:63px;height:63px}.game-world .collectible span{background:#17333dde;backdrop-filter:blur(6px);border:0;border-radius:4px;color:#f4e7c9;font-size:10px}.game-world .collectible:hover{filter:drop-shadow(0 0 9px #fff1b799)}
.title-screen{position:absolute;z-index:8;left:7%;bottom:13%;max-width:470px;color:#fff3df;text-shadow:0 3px 15px #10242ccc}.is-title:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102732b3,transparent 80%);z-index:1;pointer-events:none}.title-kicker{font-size:15px;letter-spacing:3px;color:#e6d9b7}.title-screen h1{font:500 clamp(70px,8vw,125px)/1 'Playfair Display',serif;margin:10px 0 4px;letter-spacing:-4px}.title-screen h1 span{color:#e7b391}.title-screen h2{font-size:13px;letter-spacing:5px;font-weight:500;margin:12px 0 22px}.title-screen p{font-size:14px;line-height:1.9;max-width:370px;color:#ede3cc}.title-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:26px 0 22px}.title-actions .primary,.title-actions .secondary{padding:12px 20px;font-size:13px}.title-link{padding:12px 6px;min-height:40px;border:0;background:transparent;color:#e3dec9;text-decoration:underline;font-size:12px}.title-screen>small{font-size:9px;letter-spacing:.2px;color:#dad8c3b8}
.game .dialogue-layer{z-index:9}.game .dialog-box{margin:0 5% 74px;min-height:170px;padding:22px 27px 12px;background:linear-gradient(#122c36ed,#102730f5);backdrop-filter:blur(12px);border:1px solid #c1d2b733;border-radius:7px;color:#fff3dc;box-shadow:0 8px 35px #0005}.game .speaker-name{font-size:15px;color:#e8c58e;margin-bottom:10px}.game .dialog-text{font-size:16px;line-height:1.9;min-height:57px}.game .dialog-controls{border-color:#cad9be25;margin-top:10px}.game .dialog-controls button{color:#b9cebf;font-size:11px;min-height:33px;padding:5px 9px}.game .dialog-controls .continue{color:#ffe1a7;font-size:12px}.game .choices{margin:10px 5% 15px;max-width:70%}.game .choice{background:#f1e5cbeF;border:0;box-shadow:0 3px 10px #0004;font-size:13px;padding:13px 20px;color:#254940}.game .choice:hover{background:#fff1ce}.game .speaker-placeholder{bottom:calc(170px + 110px);padding:9px 19px;max-width:300px;background:#183642cc;border:0;border-radius:7px;color:#f7e4c7;backdrop-filter:blur(7px)}.game .speaker-placeholder strong{font-size:22px;margin:0}.game .speaker-placeholder small{display:none}.game .speaker-placeholder .emotion{background:transparent;color:#d2e0c5;font-size:10px;letter-spacing:.2px;padding:0;margin-top:4px}.game .character-sprite{bottom:calc(170px + 74px);max-height:70%;max-width:65%}.game .show-ui{bottom:80px;right:6%;background:#153743d9;border:0;color:#ffebc8;min-height:40px}.game .ending-screen{z-index:10;background:#102c34c9;backdrop-filter:blur(8px)}.game .ending-screen .ending-inner{max-width:540px}.game .ending-screen h2{font-size:34px}.game .ending-screen p{font-size:15px}.game .ending-screen .primary{padding:12px 20px}.game .ending-screen .eyebrow{font-size:11px;color:#e6c28f}.game #toast{bottom:22px;background:#163943f2;border:1px solid #d2d5b43d;color:#ffedcd;backdrop-filter:blur(12px);box-shadow:0 5px 20px #0004;font-size:13px}
.game dialog.game-panel{background:linear-gradient(145deg,#253f48f5,#142d36fa);border:1px solid #b9c4ad48;color:#f1e8d5;backdrop-filter:blur(16px);box-shadow:0 20px 90px #0009;border-radius:11px;width:min(530px,calc(100vw - 30px));padding:25px;max-height:87dvh}.game dialog::backdrop{background:#06182460;backdrop-filter:blur(4px)}.game .modal-head{padding-bottom:16px;border-bottom:1px solid #fff2;margin-bottom:18px}.game .modal-head h2{font-size:21px;color:#ffe8bf}.game .modal-head .icon-btn{background:#ffffff0d;border:0;color:#e5dfcc}.game .modal-body p{font-size:13px;color:#c6d2c5}.game .modal-body label{color:#e7e5d0;font-size:13px}.game .modal-body input:not([type=range]),.game .modal-body select{background:#0f2732;border-color:#c6d9bd44;color:#f2eed9;padding:12px}.game .modal-body input[type=range]{accent-color:#afd1b7}.game .list-row{background:#102a344f;border:1px solid #c4d7bd22;border-radius:7px;padding:14px}.game .list-row strong{font-size:13px;color:#f6e8ce}.game .list-row p{font-size:11px;color:#b6c9bc}.game .list-row .icon{color:#e0c99a}.game .small-button{background:#b8d1bb1f;border:1px solid #b2cdad38;color:#dce8d0;font-size:11px}.game .small-button[aria-pressed=true]{background:#dbe5c9;color:#23483e}.game .modal-body .notice{background:#a2bd9c12;color:#cad7c4;border:1px solid #b4d1a821;font-size:12px}.game .slot span{color:#9fb6ac}.game .history-line{border-color:#cad9bc22;color:#e0e7d2}.game .history-line b{color:#e0bc86}.game .panel-bag .list-row{align-items:center}.game .panel-bag .item-art{width:77px;height:77px}.game .relationship-hero{text-align:center;margin:12px 0 24px}.relationship-hero>.icon{width:34px;height:34px;color:#dda68f}.relationship-hero h3{font-size:22px;margin:9px 0 0}.relationship-hero p{margin:5px 0}.relationship-stat{display:grid;grid-template-columns:96px 1fr 28px;gap:12px;align-items:center;font-size:12px;margin:19px 0}.relationship-stat>div{height:7px;background:#a3c7ac25;border-radius:6px;overflow:hidden}.relationship-stat i{height:100%;display:block;background:#c3d2a8}.relationship-stat:first-of-type i{background:#d5a68f}.relationship-stat b{text-align:right;font-weight:500}.relationship-note{font-size:11px!important;line-height:1.9;margin-top:25px;color:#adc2b2!important}.game .memory{background:#edf1df0b;border:1px solid #c0d3b833}.game .memory h3{color:inherit}.game .memory .eyebrow{color:#dec594}.game .chat{background:#ffffff0b;border:1px solid #d7e1d122;color:#ecedda}.game .chat.mine{background:#b1d5b620}.game .chat small{color:#c4d2b9}
/* A real interactive screen is layered over a generated device frame. */
.game dialog.phone-modal{width:min(390px,calc(100vw - 24px),calc(91dvh * .61));height:min(640px,91dvh);max-height:none;padding:0;border:0;background:transparent;overflow:visible;box-shadow:none;border-radius:0}.phone-device{position:relative;width:100%;height:100%;filter:drop-shadow(0 18px 30px #0008)}.phone-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.phone-screen{position:absolute;left:12%;right:12%;top:11%;bottom:12%;display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:linear-gradient(#e3f0e8,#c7ded8);color:#234b47}.phone-close{position:absolute;right:-7px;top:1px;z-index:3;width:34px;height:34px;border:0;border-radius:50%;background:#f1e2c0;color:#284941;box-shadow:0 3px 9px #0005;display:grid;place-items:center}.phone-status{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;padding:10px 15px 0;font-size:9px;color:#4c7269}.phone-app-header{display:flex;align-items:center;gap:8px;padding:12px 13px 10px;flex-shrink:0;border-bottom:1px solid #4e7f6d22}.phone-app-header h2{font-size:15px;margin:0;font-weight:600;color:#244e46}.phone-back{border:0;background:#548a7112;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#315e51}.phone-back .icon{width:17px;height:17px}.phone-mini-heart{font-size:22px;color:#aa7a66;line-height:1}.phone-content{overflow:auto;min-height:0;padding:13px 13px 20px;scrollbar-width:thin;scrollbar-color:#96b8a6 transparent}.phone-welcome{padding:7px 3px 20px}.phone-welcome>span{display:block;font-size:12px;color:#648678}.phone-welcome strong{display:block;font-size:22px;font-weight:500;margin:3px 0 8px;overflow-wrap:anywhere}.phone-welcome small{font-size:10px;color:#668879}.phone-apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 8px}.phone-app{min-width:0;padding:0;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:7px;color:#315c51;font-size:9px}.phone-app-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:14px;background:#eff5e8;box-shadow:0 2px 3px #416d5620,inset 0 1px 2px #fff}.phone-app-icon>.icon{width:46px;height:46px}.phone-app-icon>.icon:not(img){width:31px;height:31px;color:#668d80}.app-chats{background:#a5cdb9}.app-chats>.icon:not(img){fill:#e9f4df;color:#4c7a69}.app-memories{background:#edcbb0}.app-relationship{background:#e6c6b5}.app-relationship>.icon:not(img){fill:#bf7f71;color:#bf7f71}.phone-home-note{font-size:10px;color:#749283;line-height:1.9;margin:26px 0 0;text-align:center}.phone-home-button{position:absolute;left:38%;right:38%;bottom:4%;height:4%;border:0;background:transparent;border-radius:20px}.game .phone-content p{font-size:11px;line-height:1.85;color:#507565}.game .phone-content .chat{background:#fffdf2c7;border:0;color:#315a4c;font-size:12px;line-height:1.8;padding:11px;box-shadow:0 2px 3px #56785f0d;max-width:95%}.game .phone-content .chat small{color:#80957e;font-size:9px}.game .phone-content .chat.mine{background:#aed4b2;margin-left:auto}.game .phone-content .notice{background:#d5e2cb;padding:11px;border-radius:7px;font-size:11px;color:#536f53;line-height:1.8}.game .phone-content .memory{background:#f7eed8;border:0;padding:13px;margin:8px 0 12px;color:#446752}.game .phone-content .memory h3{font-size:12px}.game .phone-content .eyebrow{color:#7b8c6e;font-size:8px}.game .phone-content .small-button{background:#abc7a72b;border:1px solid #b0c8a480;color:#46684d;font-size:10px}.game .phone-content .list-row{background:#f0f4e5;border:0;padding:11px}.game .phone-content .list-row strong{font-size:12px;color:#3c634f}.game .phone-content .list-row p{font-size:10px}.game .phone-content .list-row .icon{width:32px;height:32px}.game .phone-content .relationship-stat{font-size:10px;grid-template-columns:70px 1fr 20px;gap:8px}.game .phone-content .relationship-stat>div{background:#84aa8e33}.game .phone-content .relationship-stat i{background:#88b392}.game .phone-content .relationship-hero h3{font-size:20px}.game .phone-content .relationship-note{color:#557964!important;font-size:10px!important}
@media(max-width:1100px){.game-hud{padding:10px 14px 40px;gap:10px}.hud-location{min-width:185px;gap:5px}.hud-location>.hud-action{width:49px;height:53px}.location-bar{font-size:12px;min-width:170px;max-width:210px;padding:5px 10px}.day-bar{font-size:10px;min-width:105px}.hud-time{min-width:123px}.hud-action{width:46px;height:50px}.hud-actions{gap:1px}.hud-actions .hud-action:last-child{width:44px}.hud-right{gap:9px}.money-bar{min-width:82px;font-size:12px;padding:3px 8px}.money-bar .icon{width:27px}.game-world .map-label{font-size:9px;padding:4px 6px}.game-world .map-label.locked{font-size:8px}.game .dialog-box{margin-bottom:62px;padding:16px 21px 10px;min-height:150px}.game .dialog-text{font-size:14px}.game .speaker-placeholder{bottom:240px}.game .speaker-placeholder strong{font-size:19px}.title-screen h1{font-size:80px}.title-screen h2{margin-bottom:14px;font-size:11px}.title-screen p{font-size:12px}.title-actions{margin:20px 0 15px}.title-actions .primary,.title-actions .secondary{min-height:39px;padding:9px 16px}.quest-tracker{bottom:62px;padding:7px}.quest-summary strong{font-size:10px;max-width:215px}.game-world .scene-actions{bottom:68px;right:17px}.game-world .scene-actions button{font-size:10px;padding:9px 12px}.hud-bottom-left,.hud-bottom-right{bottom:10px}.game .selected-location{bottom:66px;right:18px;width:290px;padding:19px}}
@media(max-width:760px) and (min-aspect-ratio:1/1){.game-hud{padding:7px 9px 30px;gap:4px}.hud-location{min-width:158px;gap:3px}.hud-location>.hud-action{width:38px;height:43px}.location-bar{font-size:10px;min-width:135px;max-width:160px;padding:3px 7px}.day-bar{font-size:8px;padding:3px 7px;margin-top:3px}.hud-time{min-width:90px}.time-symbols .icon{width:15px;height:15px}.time-symbols{gap:4px}.time-segments{margin:3px 0;padding:2px}.time-segments i{height:4px}.hud-energy{font-size:8px}.hud-energy .energy-track{width:55px}.hud-energy .icon{width:14px;height:16px}.hud-right{gap:4px}.money-bar{min-width:64px;font-size:10px;gap:3px;padding:2px 4px}.money-bar .icon{width:22px;height:18px}.hud-action{width:36px;height:39px}.hud-actions .hud-action:last-child{width:33px}.quest-tracker{bottom:49px;left:12px}.quest-dot{width:19px;height:23px;font-size:15px}.quest-summary small{font-size:7px}.quest-summary strong{font-size:9px;max-width:150px}.quest-guide{width:26px;height:29px;margin-left:2px}.episode-caption{font-size:7px}.hud-bottom-left{left:12px}.hud-bottom-right{right:12px}.hud-bottom-left .hud-action,.hud-bottom-right .hud-action{width:29px;height:30px;padding:6px}.hud-bottom-right .hud-action:has(.illustrated-icon){width:34px;height:33px}.hud-tooltip{font-size:9px}.game .dialog-box{min-height:120px;margin:0 4% 48px;padding:12px 16px 7px}.game .dialog-text{font-size:12px;min-height:39px}.game .speaker-name{font-size:12px;margin-bottom:5px}.game .dialog-controls{padding-top:3px;margin-top:5px}.game .dialog-controls button{font-size:9px;padding:2px 6px;min-height:25px}.game .speaker-placeholder{bottom:190px;padding:7px 14px}.game .speaker-placeholder strong{font-size:16px}.game .choices{margin:6px 4% 9px;max-width:85%;gap:5px}.game .choice{font-size:10px;padding:8px 13px}.game-world .scene-actions{bottom:53px;max-width:45%}.game-world .scene-actions button{font-size:9px;padding:7px 9px}.title-screen{bottom:17%;left:7%;max-width:360px}.title-screen h1{font-size:62px;margin:4px 0}.title-kicker{font-size:11px}.title-screen h2{font-size:9px;letter-spacing:3px;margin:8px 0 12px}.title-screen p{font-size:10px;margin:8px 0}.title-actions{margin:12px 0 12px;gap:7px}.title-actions .primary,.title-actions .secondary{font-size:10px;min-height:33px;padding:7px 13px}.title-link{font-size:10px;min-height:30px}.title-screen>small{font-size:7px}.game .selected-location{bottom:49px;width:250px;padding:15px}.game .selected-location h3{font-size:16px;margin:5px 0}.game .selected-location p{font-size:10px;margin:7px 0}.game .selected-location .primary{min-height:35px;font-size:11px}.game .ending-screen h2{font-size:25px}.game .ending-screen p{font-size:12px}.game-world .actor-badge{padding:9px 13px}.game-world .actor-badge strong{font-size:12px}.game-world .collectible .item-art{width:46px;height:46px}}
@media(max-aspect-ratio:1/1){.game-viewport{width:100vw;height:100dvh;background:transparent}.game-world{inset:auto 0;top:50%;height:auto;aspect-ratio:16/9;transform:translateY(-50%);overflow:hidden}.game-hud{padding:13px 11px 30px;gap:5px;flex-wrap:wrap;justify-content:space-between}.hud-location{min-width:170px}.hud-location>.hud-action{width:42px;height:47px}.location-bar{min-width:145px;max-width:calc(100vw - 220px);font-size:11px;padding:5px 8px}.day-bar{font-size:10px;padding:4px 8px;margin-top:4px}.hud-time{min-width:112px;margin-right:7px}.time-symbols .icon{width:18px;height:18px}.hud-right{width:100%;justify-content:flex-end;gap:9px;margin-top:2px;align-items:center}.hud-actions{gap:5px}.hud-action{width:43px;height:46px}.hud-actions .hud-action:last-child{width:40px}.money-bar{margin:0;font-size:12px;min-width:85px}.money-bar .icon{width:26px;height:22px}.hud-energy .energy-track{width:68px}.hud-bottom-left,.hud-bottom-right{bottom:16px}.hud-bottom-left{left:13px}.hud-bottom-right{right:13px;gap:6px}.hud-bottom-left .hud-action,.hud-bottom-right .hud-action{width:32px;height:35px}.hud-bottom-right .hud-action:has(.illustrated-icon){width:39px;height:39px}.episode-caption{display:none}.quest-tracker{bottom:79px;left:13px;right:13px;max-width:none;justify-content:space-between;background:#102b36ed;padding:12px}.quest-summary strong{max-width:calc(100vw - 100px);font-size:12px}.quest-summary small{font-size:8px}.quest-guide{height:37px;width:36px}.game-world .map-label{font-size:7px;padding:3px 4px;gap:2px}.game-world .map-label.locked{font-size:6px}.game-world .map-label.quest:before{top:-16px;width:13px;height:15px;font-size:11px;line-height:14px}.game-world .map-label .icon{width:9px;height:9px}.game .selected-location{inset:auto 13px 143px;width:auto;padding:18px;z-index:14}.game .selected-location h3{font-size:19px}.game .selected-location p{font-size:12px;line-height:1.8}.game-world .scene-actions{right:9px;bottom:9px;max-width:80%;gap:5px}.game-world .scene-actions button{font-size:9px;padding:7px 9px}.game-world .actor-badge{padding:8px 11px}.game-world .actor-badge strong{font-size:11px}.game-world .actor-label{font-size:8px;padding:3px 7px}.game-world .scene-actor{gap:4px}.game-world .collectible .item-art{width:42px;height:42px}.game-world .collectible span{font-size:8px;padding:3px 6px}.game .dialog-box{margin:0 12px 75px;min-height:217px;padding:17px 17px 10px}.game .dialog-text{font-size:14px;line-height:1.9;min-height:96px}.game .speaker-name{font-size:14px}.game .dialog-controls{margin-top:9px;padding-top:5px;gap:3px;flex-wrap:wrap}.game .dialog-controls button{font-size:10px;min-height:38px;padding:3px 5px}.game .dialog-controls .continue{font-size:11px}.game .dialog-controls>div{display:flex;flex-wrap:wrap;gap:0}.game .speaker-placeholder{bottom:315px;padding:9px 15px}.game .speaker-placeholder strong{font-size:19px}.game .choices{margin:7px 12px 12px;max-width:calc(100% - 24px);gap:7px}.game .choice{font-size:12px;line-height:1.7;padding:12px 15px}.game .character-sprite{bottom:290px;height:40%!important;max-width:80%}.game .show-ui{bottom:86px;right:20px}.game .ending-screen{padding:25px}.game .ending-screen h2{font-size:27px}.game .ending-screen p{font-size:13px;line-height:1.9}.title-screen{left:25px;right:22px;bottom:19%;max-width:none}.title-screen h1{font-size:85px}.title-screen h2{font-size:10px;letter-spacing:3.5px;margin:12px 0 19px}.title-screen p{font-size:13px;max-width:310px}.title-kicker{font-size:13px}.title-actions{gap:9px;margin:24px 0 20px}.title-actions .primary,.title-actions .secondary{font-size:12px;padding:11px 16px}.title-screen>small{font-size:8px}.is-title .game-world{height:100%;top:0;transform:none;aspect-ratio:auto}.is-title .scene-art img{object-fit:cover;object-position:70% center}.is-title:after{background:linear-gradient(0deg,#0a2434eb 4%,#15374652 80%)}.is-title .hud-time,.is-title .money-bar{display:none}.is-title .hud-right{width:auto;margin:0}.is-title .hud-actions>.hud-action:not(:last-child){display:none}.is-title .location-bar{min-width:160px;max-width:220px}.game dialog.game-panel{padding:21px;max-height:86dvh}.game .save-actions{flex-direction:column}.game .modal-head h2{font-size:20px}}
@media(max-width:360px) and (max-aspect-ratio:1/1){.hud-location{min-width:160px}.location-bar{min-width:125px;font-size:10px}.hud-time{min-width:95px;margin-right:0}.hud-time .icon{width:16px}.hud-right{gap:5px}.hud-actions{gap:2px}.hud-action{width:40px;height:43px}.money-bar{min-width:75px;font-size:11px}.game-languages button{padding:4px;font-size:9px}.hud-bottom-right{gap:4px}.game .dialog-controls button{padding:3px;font-size:9px}.game .dialog-controls .continue{font-size:10px}.game .dialog-text{font-size:13px}.game .phone-apps{gap:16px 5px}.phone-app-icon{width:50px;height:50px}.phone-app-icon>.icon{width:41px;height:41px}.phone-app{font-size:8px}}
@media(prefers-reduced-motion:reduce){.game *{transition:none!important;animation:none!important}}
.game dialog.phone-modal{width:min(440px,calc(100vw - 8px),calc(91dvh * .78));height:min(680px,91dvh)}
.phone-screen{left:19.15%;right:19%;top:8.9%;bottom:10.6%;border-radius:16px}
.phone-close{right:10%;top:2%}
.phone-home-button{left:40%;right:40%;bottom:5.2%;height:3.3%}
@media(max-height:500px){.phone-apps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 6px}.phone-app-icon{width:47px;height:47px}.phone-app-icon>.icon{width:39px;height:39px}.phone-welcome{padding-bottom:12px}.phone-welcome strong{font-size:18px}.phone-app-header h2{font-size:12px}}
.world-scroll{position:absolute;inset:0;overflow:hidden}
.pan-hint{display:none}
.game .scene-actions{position:absolute;z-index:8;right:23px;bottom:82px;max-width:45%;gap:8px}
.game .scene-actions button{background:#14333ed9;backdrop-filter:blur(10px);border:0;border-radius:7px;color:#f2ebd6;padding:11px 15px;font-size:12px;box-shadow:0 3px 9px #0003}
@media(max-width:1100px){.game .scene-actions{right:17px;bottom:68px}.game .scene-actions button{font-size:10px;padding:9px 12px}}
@media(max-aspect-ratio:1/1){.game .world-scroll{overflow-x:auto;overflow-y:hidden;touch-action:pan-x;scrollbar-width:none}.game .world-scroll::-webkit-scrollbar{display:none}.game .game-world{inset:0 auto 0 0;top:0;width:calc(100dvh * 16 / 9);height:100%;aspect-ratio:16/9;transform:none;overflow:hidden}.game .is-title .game-world{width:100%;height:100%;aspect-ratio:auto}.game .game-world .map-label{font-size:11px;padding:5px 8px}.game .game-world .map-label.locked{font-size:10px}.game .game-world .map-label.quest:before{top:-24px;width:19px;height:22px;font-size:15px;line-height:21px}.game .game-world .actor-badge strong{font-size:15px}.game .game-world .actor-badge{padding:12px 17px}.game .game-world .actor-label{font-size:10px;padding:5px 10px}.game .game-world .collectible .item-art{width:63px;height:63px}.game .game-world .collectible span{font-size:10px}.pan-hint{display:block;position:absolute;z-index:6;left:50%;bottom:146px;transform:translateX(-50%);font-size:10px;color:#e9e5cc;background:#102c36ab;backdrop-filter:blur(6px);padding:5px 9px;border-radius:15px;white-space:nowrap;pointer-events:none}.game .scene-actions{right:13px;bottom:185px;max-width:calc(100% - 26px);gap:6px}.game .scene-actions button{font-size:10px;padding:10px 12px}}
@media(max-width:760px) and (min-aspect-ratio:1/1){.game .scene-actions{bottom:53px;max-width:45%}.game .scene-actions button{font-size:9px;padding:7px 9px}}

/* Character cutouts share the supplied full-body composition. */
.game .character-sprite{bottom:78px;height:calc(100% - 165px)!important;max-height:none;max-width:80%;pointer-events:none}
.game-world .scene-actor.has-sprite{top:auto;bottom:8%;left:58%;transform:translateX(-50%);height:76%;width:34%;justify-content:flex-end;gap:3px}
.game-world .npc-sprite{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.game-world .has-sprite .actor-badge{z-index:1;min-height:0;border-radius:6px;padding:6px 12px;flex-direction:row;gap:6px}
.game-world .has-sprite .actor-badge strong{margin:0;font-size:12px}
.game-world .has-sprite .actor-badge .icon{width:17px;height:17px}
.game-world .has-sprite .actor-label{z-index:1}
.game .scene-actor.has-sprite:hover .npc-sprite{filter:brightness(1.05)}
.game .ui-hidden .character-sprite{visibility:hidden}
@media(max-aspect-ratio:1/1){.game .character-sprite{bottom:75px;height:calc(100% - 230px)!important;max-width:100%}}
