/* Anime edition: compact play layout, cream stationery and mint/coral cel-shaded art. */
:root{color-scheme:light;--ink:#324952;--dusk:#eef2e8;--deep:#f6f4ea;--paper:#304650;--muted:#62776f;--amber:#f4b29d;--coral:#ba574c;--teal:#69a599;--line:#baccc3;--panel:#fffaf0;background:#f5f2e7;scrollbar-color:#7fa395 #eef2e8}
body{background:radial-gradient(ellipse at 75% 15%,#e0efe5 0,transparent 65%),#f5f2e7}
.masthead{border-color:#c6d7cd;height:76px}.brand{font-size:22px;letter-spacing:2px}.brand-mark{color:#355f59;border-color:#aac4b6;background:#deebdf;box-shadow:3px 3px 0 #bbd2c0}.brand small{color:#637c74;font-size:8px}.icon-button{border-radius:4px;border-color:#8da99a}.primary{background:var(--amber);border-radius:9px;box-shadow:0 2px 0 #c47c70}.secondary{border-color:#94b6a5;border-radius:9px}.text-button{color:#526e67}
.intro{padding-top:44px;gap:34px;grid-template-columns:.95fr 1.3fr}.intro-copy{padding:30px 0}.intro h1{font-size:clamp(39px,4.6vw,66px);line-height:1.28;letter-spacing:1px;font-weight:500}.intro h1 span{color:var(--amber)}.intro .eyebrow{color:#547e73;letter-spacing:1px}.intro-description{color:#5d726c;font-size:14px;line-height:2}.intro-art{position:relative;transform:rotate(-1deg);border:1px solid #9eb7a8;padding:8px;background:#fffaf0;box-shadow:12px 16px 0 #78938622}.intro-art img{border-radius:0;width:100%;height:auto;aspect-ratio:1.32;object-fit:cover}.shop-stamp{right:24px;top:25px;background:#f9d1bd;color:#684d49;border-color:#c68e79;transform:rotate(5deg)}.art-caption{font-size:12px;color:#51695e;padding:16px 10px 9px}.intro-rules{border-color:#c6d7cb;margin-top:14px;padding-top:25px}.intro-rules b{color:#ad594f}.intro-rules b span{color:#334e48}.intro-meta{color:#667b6c}
body.in-game{background:#f5f2e7}body.in-game .masthead{height:64px;max-width:1760px;border-bottom:1px solid #c6d7cd;padding-inline:28px}
body.in-game #app:has(.store-play){max-width:1760px;height:calc(100dvh - 64px);display:grid;grid-template-columns:164px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 34px;column-gap:24px;padding:20px 28px 0;overflow:hidden}
body.in-game .status-strip{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:24px;margin:0;padding:20px 14px 12px 0;border:0;border-right:1px solid #c5d6ca;background:none}
body.in-game .day-tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.day-tile small{letter-spacing:3px;color:#5a786a;writing-mode:horizontal-tb}body.in-game .day-tile b{font-size:53px;font-weight:400;color:#36594f;line-height:1.1}body.in-game .day-tile em{font-size:13px;color:#6c8074;margin-left:9px}
body.in-game .day-progress{display:flex;flex-wrap:wrap;gap:5px;margin:0;max-width:140px}body.in-game .day-progress span{height:3px;width:14px;font-size:0;background:#d1dfd2;border:0;border-radius:0}body.in-game .day-progress span.done{background:#659b89}body.in-game .day-progress small{width:100%;font-size:11px;margin-top:5px;line-height:1.5;color:#61796c}
body.in-game .vouchers{margin:0;padding:20px 0 0;border:0;border-top:1px dashed #bacfbd;display:flex;align-items:flex-start;flex-direction:column;gap:7px}body.in-game .vouchers b{font-size:30px;color:#a25146}body.in-game .vouchers small{font-size:11px}body.in-game .vouchers em{font-size:11px}
body.in-game .stat{width:100%;max-width:none;flex:none}body.in-game .stat>span{font-size:11px;color:#597268;display:flex;justify-content:space-between;margin-bottom:8px}body.in-game .stat b{font-size:12px;color:#324f46}body.in-game .stat meter{height:4px;margin:0}meter::-webkit-meter-bar{background:#dbe7dc}meter::-webkit-meter-optimum-value{background:#699d89}
.store-play{grid-column:2;grid-row:1;border:1px solid #9ebbad;border-radius:8px;background:#d9e6df;box-shadow:0 8px 30px #527d6420}.scene-brief{background:#fff8e8;color:#364f48;min-height:60px;border-bottom:3px solid #bdcfbf;padding:10px 18px;gap:20px}.brief-label{font:11px/1.6 var(--serif);letter-spacing:3px;writing-mode:vertical-rl;padding-right:12px;border-right:1px solid #c2d3c4;flex:none}.scene-brief>div{gap:17px}.scene-brief b{font:600 16px var(--serif)}.scene-brief div>span{color:#63736b;font-size:12px}.route-button{border-color:#8fb29f;background:#ddede0;color:#365c50;border-radius:8px;min-height:39px;font-size:12px}
.scene-viewport{background:radial-gradient(ellipse at 48% 53%,#3c4537 0,#1a2b2e 58%,#132126 100%)}.scene-caption{left:20px;top:17px;color:#b7d6ca;font-size:13px;letter-spacing:3px}.scene-caption span{color:#9cbfb8;font-size:7px}
.scene-dock{background:#faf8ed;border-color:#bacebe;padding:12px 18px;gap:18px}.direction-pad .direction{background:#e4eddf;border:1px solid #a8bfaa;color:#d6d4b8;border-radius:9px;box-shadow:0 2px #101916}.nearby-status span{font-size:12px;color:#e4d9ba}.nearby-status small{color:#9da68f;font-size:10px}.store-shortcuts .secondary{background:#e4eddf;border-color:#a8bfaa}.store-shortcuts .text-button{color:#526b60}.interact-button{font-size:12px;min-width:108px;min-height:44px}.interact-button:disabled{opacity:.6;background:#616a54;color:#e8e7d3;border-color:#7b8069;box-shadow:none}
body.in-game .game-footer{grid-column:1/-1;grid-row:2;padding:0;min-height:34px;color:#8d9886;flex-direction:row;align-items:center}body.in-game .game-footer>div{width:auto;gap:15px}.game-footer .text-button{font-size:10px;min-height:30px;padding-block:4px}
dialog{background:#26312b;border:1px solid #777861;border-radius:4px;box-shadow:0 24px 100px #0008}dialog::backdrop{background:#081411b8;backdrop-filter:blur(5px)}dialog .panel{border-color:#afc8b8;background:#fffaf0}dialog .customer-scene{background:linear-gradient(125deg,#d5e8db,#f8dfc5)}dialog .counter-top,dialog .panel-title{background:#e8efdf;color:#3d5c4d}dialog .conversation{background:#fffdf5}dialog .trade-tray{background:#eaf1e2;border-color:#aec5a3}dialog .stock-item{background:#f6f8ec;border-color:#bfd1b8}dialog .stock-item.requested{background:#f9e8c7;border-color:#b79c60}dialog .receipt{background:#fff1d2;color:#3c5644;box-shadow:4px 4px #62886e22}dialog .receipt .eyebrow{color:#61764f}dialog .night-option{background:#eef4e6;border-color:#adc6ac}.announcement{background:#fff1d2;color:#35543d;border-color:#a3bb93}
@media(min-width:761px) and (max-height:690px){body.in-game .status-strip{gap:16px;padding-top:10px}body.in-game .day-tile b{font-size:42px}body.in-game .vouchers{padding-top:13px}.scene-brief{min-height:53px;padding-block:7px}.scene-dock{padding-block:8px}}
@media(max-width:1000px) and (min-width:761px){body.in-game #app:has(.store-play){grid-template-columns:128px minmax(0,1fr);column-gap:16px;padding-inline:18px}.scene-dock{gap:10px;padding-inline:12px}.nearby-status{display:none}.scene-brief{gap:12px}.scene-brief>div{align-items:flex-start;gap:4px;flex-direction:column}.store-shortcuts{gap:7px}}
@media(max-width:760px){
 .masthead{height:62px}.intro{padding-top:24px;gap:22px}.intro-copy{padding:4px 8px}.intro h1{font-size:42px;margin-block:18px}.intro-art{transform:none;box-shadow:5px 6px #78938622}.intro-art img{aspect-ratio:1.7;object-position:center 52%}.intro .shop-stamp{top:17px;right:17px}.intro-rules{padding-top:22px}.intro-rules p{font-size:12px}
 body.in-game .masthead{height:54px;padding-inline:14px}body.in-game .brand{font-size:17px}body.in-game .brand small{font-size:6px}body.in-game .brand-mark{display:none}body.in-game #app:has(.store-play){height:calc(100dvh - 54px);display:flex;flex-direction:column;gap:0;padding:0 9px env(safe-area-inset-bottom);overflow:hidden}
 body.in-game .status-strip{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:10px 3px;min-height:58px;border:0;flex:none}body.in-game .day-tile{display:block}body.in-game .day-tile small,body.in-game .day-progress{display:none}body.in-game .day-tile b{font-size:27px}body.in-game .day-tile em{font-size:9px;margin-left:3px}body.in-game .vouchers{padding:0;border:0;gap:2px}body.in-game .vouchers b{font-size:20px}body.in-game .vouchers small{font-size:8px}body.in-game .vouchers em{font-size:8px}body.in-game .stat{flex:1;max-width:95px}body.in-game .stat>span{font-size:8px;gap:2px;margin-bottom:6px}body.in-game .stat b{font-size:10px}
 .store-play{flex:1}.scene-brief{padding:9px 10px;min-height:62px;gap:8px}.brief-label{font-size:9px;letter-spacing:1px;padding-right:7px}.scene-brief>div{flex-direction:column;align-items:flex-start;gap:4px}.scene-brief b{font-size:13px}.scene-brief div>span{font-size:10px}.route-button{font-size:10px;padding:7px;min-height:38px}.scene-caption{left:12px;top:12px;font-size:11px}.scene-caption span{display:none}
 .scene-dock{display:grid;grid-template-columns:112px minmax(0,1fr) 90px;gap:7px 9px;padding:10px}.direction-pad{grid-template-columns:repeat(3,34px);grid-template-rows:repeat(2,34px);gap:4px}.nearby-status{display:block}.nearby-status small{display:none}.nearby-status span{font-size:10px;line-height:1.6}.interact-button{min-width:0;min-height:50px;padding:8px 4px;font-size:11px}.store-shortcuts{grid-column:1/-1;border-color:#cad8c1;justify-content:space-between;padding-top:6px;gap:4px}.store-shortcuts .secondary,.store-shortcuts .text-button{min-height:34px;font-size:11px;padding:7px 10px}body.in-game .game-footer{min-height:28px;flex:none;font-size:8px}body.in-game .game-footer>span{display:none}body.in-game .game-footer>div{justify-content:space-between;width:100%}body.in-game .game-footer .text-button{font-size:9px;min-height:28px}.announcement{bottom:166px}
}
@media(max-width:360px){body.in-game .status-strip{gap:7px}.scene-dock{grid-template-columns:104px minmax(0,1fr) 80px;gap:6px;padding:8px}.direction-pad{grid-template-columns:repeat(3,32px)}.scene-brief{gap:6px}.scene-brief b{font-size:12px}.brief-label{display:none}.intro h1{font-size:36px}}
@media(min-width:761px) and (max-height:500px){body.in-game .masthead{height:44px}body.in-game #app:has(.store-play){height:calc(100dvh - 44px);padding-top:8px;grid-template-columns:110px 1fr;grid-template-rows:1fr}.game-footer{display:none!important}body.in-game .status-strip{gap:10px}body.in-game .day-tile b{font-size:28px}body.in-game .vouchers b{font-size:22px}.scene-brief{min-height:42px}.scene-dock{padding-block:5px}.direction-pad{grid-template-rows:repeat(2,26px)}}

/* Anime dialogue, illustrated cast and visible control states. */
:root{--serif:"Songti SC","STSong",serif}*{scrollbar-color:#91b3a4 #edf2e6}.masthead{color:#34574f}.brand{font-family:var(--sans);font-weight:750;letter-spacing:1px}.brand-mark{border-radius:10px}.primary{color:#523e3c;border:1px solid #cd9180;box-shadow:0 3px 0 #d1a091}.secondary{color:#45675c;background:#eef4e7}.text-button:hover{color:#934c46}.intro h1{font-weight:700;letter-spacing:-1px}.intro h1 span{color:#b75f54}.intro-art{border-radius:18px;padding:9px}.intro-art img{border-radius:10px;border:0;box-shadow:none}.shop-stamp{border-radius:8px;box-shadow:2px 3px 0 #885b3b22}.lit-dot{background:#7eaa91;box-shadow:0 0 0 4px #7eaa9120}.intro-rules{padding-inline:0}.intro-rules b span{font-weight:600}.store-play{border-radius:14px}.scene-brief{background:#fff8eb}.scene-caption{text-shadow:0 1px 3px #132b39}.scene-dock .direction{color:#426758;border-radius:9px;box-shadow:0 2px 0 #b5c8b4}.direction-pad .direction:hover{background:#d5e5ce}.direction-pad .direction:active{background:#bfdac4}.nearby-status small{color:#6b8072}.nearby-status span{color:#405e4f}.game-footer{color:#667d70}dialog{background:#f9f5e9;color:#375248;border:1px solid #8da999;border-radius:18px;box-shadow:0 20px 70px #142c3955}dialog::backdrop{background:#19303d99}.dialog-top{border-color:#c8d8c5}.panel-title h2{font:700 18px var(--sans)}.customer-scene{border-bottom:1px solid #b4c8ae}.customer-scene .portrait{filter:drop-shadow(3px 4px 0 #58735c20)}.customer-identity h2{color:#355343}.customer-identity p,.customer-identity span{color:#56705c}.weather-tag{color:#617b69!important;border-color:#b5cbaa!important;background:#f8f5e3aa}.speech{color:#415e4f}.conversation blockquote{background:#fffdf5;color:#375346;border:1px solid #bcd0b8;border-radius:3px 18px 18px 18px;padding:18px;box-shadow:3px 3px 0 #90ac9420}.trade-options button{background:#edf3e5;color:#405d4b;border-color:#b0c7a9}.trade-options button:first-child{background:#f5c6af;border-color:#cb9680;color:#63463c}.observation,.dialog-copy,.request-note{color:#5a7060}.product{filter:drop-shadow(2px 3px 0 #39574f20);border:1px solid #647b72}.portrait{border-radius:12px}.relationship-card{background:#fffaf0;border-color:#bed2bf}.warning{color:#a34c40}.announcement{box-shadow:0 5px 20px #24462d33}.ending-art img{object-fit:cover}.ending-tags span{background:#e4edda;color:#4a654e}.receipt .primary{color:#523e3c}
@media(prefers-reduced-motion:reduce){button{transition:none}}

.conversation blockquote{color:#375346}.offer strong,.night-option .task-arrow{color:#a34f42}.night-body .night-warning{color:#6b704e}.customer-tools .text-button{color:#506b5c}

.visitor-name small,.visitor-name>span,.customer-detail,.customer-tools>small{color:#617461}.visitor-name>span{border-color:#8faa92}.open-sign{color:#a35447}.clue{background:#eef0d8;color:#596b43;border-color:#9fb383}.window-lines:after{opacity:.25}.window-lines{background:linear-gradient(135deg,transparent 35%,#fff6d744 35%,#fff6d744 49%,transparent 49%)}.trade-tray.ready{background:#e5efda}.trade-note{color:#63715b}

dialog .portrait.large{height:101px;width:94px;margin-left:3px}dialog .visitor-name{padding-bottom:12px}@media(max-width:480px){dialog .weather-tag{display:none}dialog .visitor-name{padding-left:14px}dialog .visitor-name h2{font-size:25px}}
