:root{font-family:Arial,'Apple SD Gothic Neo',sans-serif;color:#fff4dc;background:#204d8b;--ink:#233f60;--paper:#fff4dc;--terra:#ad503b}*{box-sizing:border-box}body{margin:0}button,select{font:inherit;min-width:44px;min-height:44px;border:1px solid #c8ac88;border-radius:7px;background:#fff7e5;color:var(--ink);cursor:pointer}button:hover{border-color:#d97950}button:focus-visible,select:focus-visible{outline:3px solid #ffc567;outline-offset:2px}button:disabled{opacity:.45;cursor:default}.primary{background:#ad503b;color:white;border-color:#ad503b;font-weight:700}[hidden]{display:none!important}#app{max-width:1170px;margin:auto;padding:8px 18px 0}header{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding-right:50px}.brand{font-weight:800;font-size:14px}.brand b{display:block;font-size:8px;font-weight:500;letter-spacing:1px}nav{display:flex;gap:5px}select{max-width:88px}#tasks{font-size:12px}h1{font-family:Georgia,serif;font-size:27px;margin:11px 0 16px;line-height:1.1}.workspace{display:grid;grid-template-columns:1.65fr 1fr;gap:22px}.scene{padding:8px;background:#fff1d2;box-shadow:4px 6px 0 #122f5e55;transform:rotate(-.4deg);border-radius:3px}#canvas{display:block;width:100%;height:auto;touch-action:manipulation}.look{display:flex;gap:7px;margin-top:12px;align-items:center}.look button:first-child,.look button:last-child{font-size:23px;min-width:54px}.look #original{flex:1;background:transparent;color:#fff1d8;border-color:#8fa5c6;font-size:13px}.map-board{background:#f9e8c8;padding:10px;border-radius:10px;color:#243e5f}#map{display:block;width:100%;height:auto;touch-action:none}.mark-controls{margin-top:8px}label{font-size:12px;font-weight:700;display:block;margin-bottom:5px}#sites{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}#sites button{font-weight:800}.selected{background:#ad503b!important;color:#fff6e0!important;border-color:#ad503b!important}#direction{width:100%;margin-top:8px;font-size:15px;font-weight:700}#current-label{font-size:11px;line-height:1.3;display:block;text-align:center;margin-top:5px}.actions{display:flex;gap:6px;margin-top:12px}.actions #submit{flex:1;font-size:13px}.actions #hint{font-size:12px}.landmark-guide{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.landmark-guide span{display:flex;align-items:center;font-size:12px;gap:3px}.landmark-guide canvas{width:44px;height:55px;background:#f7e5c3;border-radius:6px}footer{display:flex;align-items:center;justify-content:space-between;padding:8px 0}footer button{background:none;border:0;color:#fff1d8;font-size:11px}#storage{color:#ffcb9a;font-size:11px}#entry{max-width:730px;margin:auto;text-align:center}#poster{width:100%;height:auto;display:block;border:10px solid #fff1d4;transform:rotate(-1deg);box-shadow:4px 8px 0 #153460}#entry h2{font-family:Georgia,serif;font-size:32px;margin:22px 0 8px}#intro{font-size:15px;line-height:1.6;max-width:580px;margin:0 auto 15px}#start,#resume{min-width:150px;margin:0 5px;padding:8px 18px}dialog{color:#243e5e;background:#fff7e6;border:1px solid #c5a783;border-radius:12px;padding:22px;max-width:550px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);box-shadow:0 20px 80px #102c4c99}dialog::backdrop{background:#12345ba8}.close{position:sticky;top:0;float:right;font-size:24px;margin:-10px -10px 0 0;z-index:2}dialog h2{font-family:Georgia,serif;font-size:26px;margin:8px 0 18px;padding-right:30px}dialog p,dialog li{font-size:15px;line-height:1.6}.modal-actions{display:flex;gap:8px;margin-top:14px}.modal-actions button{flex:1}.stars{font-size:50px;letter-spacing:10px;text-align:center;color:#c38224}.task-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.task-grid button{min-height:80px;padding:8px;font-size:14px}.task-grid span{display:block;color:#b57b31;margin-top:7px}.guide-list{padding-left:20px}.guide-list li{margin-bottom:12px}.credit{font-size:12px;line-height:1.5;overflow-wrap:anywhere;margin:10px 0}.hint-art{display:flex;gap:15px;justify-content:center;align-items:center}.hint-art canvas{width:100px;height:140px}#gamenow-mobile-menu-launcher{top:8px!important;right:8px!important}
@media(max-width:740px){#app{padding:4px 9px 0}.brand{font-size:12px}.brand b{font-size:7px}header{padding-right:48px}nav{gap:3px}select{max-width:72px}h1{font-size:20px;margin:5px 0 8px}.workspace{display:block}.scene{padding:5px;transform:none}.look{gap:5px;margin-top:6px}.look button:first-child,.look button:last-child{min-width:44px}.look #original{font-size:11px}.landmark-guide{display:none}.map-board{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:7px;margin-top:9px;align-items:center}#map{width:100%;max-height:175px;aspect-ratio:1;object-fit:contain}.mark-controls{margin-top:0}label{font-size:10px;margin-bottom:4px}#sites{grid-template-columns:repeat(3,1fr);gap:4px}#sites button{font-size:14px}#direction{margin-top:5px;font-size:13px}#current-label{font-size:10px;margin-top:3px}.actions{gap:5px;margin-top:7px}.actions #submit{font-size:12px}.actions #hint{font-size:11px}footer{padding:0}#entry h2{font-size:26px;margin-top:20px}#intro{font-size:14px}#start,#resume{min-width:120px}}
@media(max-width:740px) and (max-height:620px){h1{font-size:17px;margin:3px 0 4px}.scene{padding:3px}.map-board{margin-top:5px;padding:4px;gap:5px;grid-template-columns:minmax(0,1fr) minmax(137px,1fr)}#map{max-height:144px}.mark-controls label{display:none}#current-label{font-size:9px}#direction{margin-top:3px}#sites{gap:3px}.look{margin-top:4px}.actions{margin-top:5px}footer{display:none}#entry h2{font-size:24px;margin-top:15px}#intro{font-size:13px}}
@media(min-width:741px) and (max-height:500px){#app{padding-top:2px}h1{position:absolute;left:180px;top:8px;font-size:18px;margin:0;max-width:360px}.workspace{grid-template-columns:1.2fr 1fr;gap:14px}.scene{padding:5px;margin-top:5px}.look{margin-top:5px}.landmark-guide,footer{display:none}.map-board{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:6px;align-items:center;margin-top:5px}#map{height:192px;width:100%;object-fit:contain}.mark-controls{margin:0}#sites{grid-template-columns:repeat(3,1fr);gap:3px}label{font-size:10px}#direction{font-size:13px;margin-top:5px}#current-label{font-size:10px}.actions{margin-top:8px}#entry{display:grid;grid-template-columns:1.2fr 1fr;gap:6px 18px;max-width:880px}#poster{grid-row:1/5;margin-top:16px}#entry h2{font-size:27px;margin:15px 0 0}#intro{font-size:14px}}
