/* V4 only: cream paper, muted teal, generous touch targets. */
.v4-world{color:#3d574f;font-family:system-ui,-apple-system,sans-serif}.v4-world button,.v4-dialog button{font:inherit;cursor:pointer;min-height:44px;padding:10px 16px;border:1px solid #c9d2be;background:#fffdf3;color:#40594f;border-radius:13px;box-shadow:0 2px 0 #697c5720;transition:background .15s}.v4-world button:hover,.v4-dialog button:hover{background:#e9efdc}.v4-world button:focus-visible,.v4-dialog :focus-visible{outline:3px solid #238e86;outline-offset:3px}.v4-world button:disabled,.v4-dialog button:disabled{opacity:.5;cursor:default}.v4-brand{position:absolute;top:24px;left:28px;display:flex;align-items:center;gap:12px;pointer-events:none}.v4-brand h1{font-size:27px;letter-spacing:-1px;margin:1px 0;font-weight:750}.v4-brand small{letter-spacing:2px;font-size:10px;font-weight:700}.v4-seal{display:grid;place-items:center;background:#fff8e8;border-radius:18px;width:49px;height:49px;font-size:29px;border:2px solid #ffffff88;box-shadow:0 5px 20px #53746920}.v4-tools{position:absolute;right:26px;top:25px;display:flex;gap:8px}.v4-tools button{background:#fff9e9ed;box-shadow:0 4px 18px #566e4d16}.v4-quest{position:absolute;left:28px;top:116px;width:260px;box-sizing:border-box;padding:19px;background:#fff9eaeF;border:1px solid #fff;border-radius:23px;box-shadow:0 8px 35px #3d604b1a}.v4-quest .v4-quest-title{padding:0;border:0;background:none;box-shadow:none;min-height:30px;font-size:12px;font-weight:750;letter-spacing:.3px;width:100%;text-align:left;color:#87774f}.v4-quest h2{font-size:20px;line-height:1.55;margin:8px 0 7px;letter-spacing:-.5px}.v4-quest p{font-size:13px;line-height:1.7;margin:0 0 16px;color:#6f7b69}.v4-progress{display:flex;gap:5px;margin:13px 0 16px}.v4-progress span{flex:1;font-size:10px;padding:6px 0;text-align:center;border-radius:8px;background:#eeeede;color:#929581}.v4-progress .current{color:#37635a;background:#cfe6d5;font-weight:700}.v4-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:14px 0}.v4-quest .v4-actions{margin:7px 0}.v4-quest button{font-size:13px}.v4-world .v4-primary,.v4-dialog .v4-primary{background:#427d6d;color:#fffaf0;border-color:#427d6d}.v4-world .v4-primary:hover,.v4-dialog .v4-primary:hover{background:#346e60}.v4-world .v4-text,.v4-dialog .v4-text{border:0;background:none;box-shadow:none;color:#647a64;font-size:13px;text-decoration:underline;text-underline-offset:4px}.v4-map{position:absolute;right:26px;top:84px;width:300px;padding:20px;background:#fff9eaf5;border-radius:20px;box-shadow:0 8px 25px #45644920;z-index:4}.v4-map h2{font-size:18px;margin:0 0 12px}.v4-map>div{display:flex;gap:5px;margin-top:7px}.v4-map>div button:first-child{flex:1;text-align:left}.v4-bottom{position:absolute;bottom:28px;right:28px;display:flex;gap:6px}.v4-bottom button{padding:7px;min-width:44px;background:#fff9ebeb;font-size:21px}.v4-hint{position:absolute;left:28px;bottom:16px;font-size:12px;background:#fff9dfc9;border-radius:12px;padding:9px 13px;color:#52756b;pointer-events:none}.v4-world .v4-interact{position:absolute;bottom:83px;left:50%;transform:translateX(-50%);background:#fff7df;font-size:15px;font-weight:700;box-shadow:0 5px 25px #344d4022;white-space:nowrap}.v4-notice{position:absolute;bottom:140px;left:50%;transform:translateX(-50%);max-width:440px;background:#fff9ed;border:1px solid #d0d9bd;padding:12px 16px;border-radius:14px;font-size:13px;z-index:5}.v4-notice button{padding:2px;margin-left:10px;min-width:40px}.v4-shade{position:fixed;inset:0;background:#28483f52;backdrop-filter:blur(7px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.v4-dialog{background:#fffbef;color:#43564d;border:1px solid #fff;border-radius:27px;box-shadow:0 25px 90px #233e4a40;width:590px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;padding:24px 28px;font:15px/1.75 system-ui,sans-serif;box-sizing:border-box}.v4-dialog.v4-wide{width:930px}.v4-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px}.v4-dialog>header h2{margin:0;font-size:21px;letter-spacing:-.6px}.v4-dialog>header button{flex-shrink:0;font-size:13px}.v4-tabs{display:flex;gap:6px;border-bottom:1px solid #dddcca;padding-bottom:15px;margin-bottom:20px;overflow:auto}.v4-tabs button{white-space:nowrap;flex:1;border:0;box-shadow:none;background:none;font-size:13px;padding:8px}.v4-tabs button[aria-current]{background:#d7e8d8;color:#376754;font-weight:750}.v4-section-head small,.v4-source small,.v4-story small{font-size:12px;letter-spacing:.4px;color:#8a805f}.v4-section-head h3{font-size:24px;letter-spacing:-.8px;margin:7px 0}.v4-section-head p{color:#718173;margin:0 0 20px}.v4-dialog textarea{font:inherit;line-height:1.85;border:1px solid #d5dac5;background:#fffefa;border-radius:14px;padding:15px;width:100%;box-sizing:border-box;color:#344d47;resize:vertical;min-height:85px}.v4-label{display:block;font-size:13px;color:#617569;margin:14px 0 8px;font-weight:650}.v4-dialog .v4-selected,.v4-dialog button[aria-pressed=true]{background:#d8e9d9;border-color:#789c84;color:#335f4c}.v4-source,.v4-story{padding:18px 22px;border-radius:16px;background:#f3efdc;margin:18px 0;white-space:pre-wrap}.v4-source p,.v4-story p{margin:6px 0}.v4-word-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.v4-word-grid article{padding:20px;border-radius:17px;border:1px solid #e4d8ba;background:#fff8e7}.v4-word-grid article:nth-child(2){background:#f3e9df}.v4-word-grid article:nth-child(3){background:#eee9ed}.v4-word-grid h4{font-size:22px;margin:0 0 12px}.v4-word-grid p{font-size:14px;line-height:1.85}.v4-word-grid small{font-size:12px;display:block;color:#7f8175}.v4-callout,.v4-help-copy{background:#eaf0df;border-radius:12px;padding:15px 18px;font-size:13px}.v4-chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.v4-chips button{font-size:14px}.v4-response,.v4-analysis{margin:25px 0;padding-top:10px;border-top:1px solid #dedecb}.v4-analysis>div{display:inline-block;vertical-align:top;width:calc(50% - 12px);margin:12px 12px 8px 0;padding:15px;box-sizing:border-box;background:#f1f0df;border-radius:13px}.v4-analysis>div p{margin:7px 0;font-size:13px}.v4-analysis mark{background:#f6dfac;border-radius:3px;padding:2px 4px}.v4-feedback{background:#e0eddb;padding:23px;border-radius:18px;margin:25px 0}.v4-feedback h4{margin:0 0 12px;font-size:18px}.v4-dialog details{margin:20px 0;border-top:1px solid #dce0ce;padding-top:15px}.v4-dialog summary{cursor:pointer;min-height:35px;color:#677a63}.v4-record{display:block;width:100%;text-align:left;margin:8px 0}.v4-record-card{background:#f5f1e3;padding:20px;margin:15px 0;border-radius:16px}.v4-record-card p{white-space:pre-wrap}.v4-record-card .v4-actions button{font-size:12px}.v4-reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.v4-reward-grid button{display:flex;align-items:center;flex-direction:column;gap:10px;padding:22px 12px}.v4-reward-grid span{font-size:55px;color:#c99089;line-height:1.5}.v4-reward-grid button:nth-child(2) span{color:#c4a360}.v4-reward-grid button:nth-child(3) span{color:#81a17f}.v4-reward-grid strong{font-size:14px}.v4-reward-grid small{font-size:12px;color:#77816f}.v4-chosen{background:#e4ecd7;border-radius:20px;padding:22px;font-size:23px;text-align:center}.v4-placement-list{display:grid;gap:10px}.v4-save-notice{position:sticky;bottom:0;background:#f2e7c9;padding:15px;border-radius:12px;z-index:1}.v4-muted{font-size:12px;color:#7f897b}.v4-legacy .diary-tabs{display:none}.v4-inspect{position:absolute;right:22px;top:95px;padding:12px;background:#fff9eccf;border-radius:12px;max-width:265px;font:11px/1.6 monospace;z-index:10}.v4-inspect button{font:11px system-ui;padding:4px 8px;min-height:32px}.v4-inspect nav{display:flex;flex-wrap:wrap;gap:3px}.v4-inspect a{font:11px system-ui;color:#34685b;padding:5px;display:inline-block}.v4-inspect p{max-height:95px;overflow:auto}.v4-shade~.v4-inspect{display:none}.v4-world:has(+.v4-shade) .v4-inspect{display:none}
@media(max-width:700px){.v4-brand{top:15px;left:14px;gap:8px}.v4-brand h1{font-size:21px}.v4-brand small{font-size:8px;letter-spacing:1px}.v4-seal{width:36px;height:40px;font-size:23px}.v4-tools{top:15px;right:12px;gap:5px}.v4-tools button{font-size:11px;padding:7px 9px}.v4-quest{left:14px;top:84px;width:235px;padding:15px}.v4-quest.is-collapsed{width:auto;padding:7px 14px;border-radius:14px}.v4-bottom{bottom:17px;right:12px;gap:3px}.v4-bottom button{min-width:38px;font-size:18px}.v4-hint{display:none}.v4-map{top:73px;right:12px;width:275px}.v4-shade{padding:8px}.v4-dialog{padding:17px 16px;border-radius:20px;max-height:calc(100dvh - 16px)}.v4-dialog>header{margin-bottom:12px}.v4-dialog>header h2{font-size:18px}.v4-dialog>header button{padding:8px 10px}.v4-tabs{gap:3px;margin-bottom:12px}.v4-tabs button{font-size:11px;padding:8px 5px}.v4-section-head h3{font-size:21px}.v4-word-grid{grid-template-columns:1fr;gap:8px}.v4-word-grid article{padding:14px 18px}.v4-word-grid p{margin:6px 0}.v4-word-grid h4{font-size:20px;margin-bottom:7px}.v4-analysis>div{width:100%;margin-right:0}.v4-reward-grid{gap:6px}.v4-reward-grid button{padding:16px 7px}.v4-reward-grid strong{font-size:12px}.v4-reward-grid small{font-size:11px}.v4-notice{bottom:140px;width:85%;box-sizing:border-box}.v4-inspect{display:none}}

.v4-analysis>small{display:block}.v4-analysis>.v4-text{display:block}.v4-dialog>header{position:sticky;top:-24px;z-index:2;background:#fffbef;padding:10px 0}.v4-dialog .v4-tabs{position:relative;z-index:1}
.v4-quest h2{word-break:keep-all}
@media(max-width:700px){.v4-tabs{overflow:visible}.v4-tabs button{min-width:0;white-space:normal;line-height:1.5}.v4-dialog>header{top:-17px}}

.v4-tabs button{word-break:keep-all}
/* 2026-09-18 feedback: light the destination; keep one activity in each place. */
.v4-beacon-label{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none;text-align:center;filter:drop-shadow(0 3px 8px #547d5840);z-index:2;white-space:nowrap}.v4-beacon-label>span{font-size:28px;color:#fff7b8;text-shadow:0 0 10px #ffda70,0 0 22px #fff1a1;animation:v4-beacon-breathe 2.8s ease-in-out infinite}.v4-beacon-label strong{font-size:13px;background:#fff6dcee;border:1px solid #fff;padding:5px 13px;border-radius:12px;color:#66583b}.v4-beacon-label small{font-size:10px;background:#536d55d9;color:#fff9e7;border-radius:7px;padding:3px 8px}.v4-place-caption{color:#7c896b;font-size:13px;border-bottom:1px solid #e3ddc5;padding:0 0 14px;margin:0 0 18px;word-break:keep-all}.v4-dialog{animation:v4-dialog-enter .28s ease-out}.v4-reward-celebration{position:relative;text-align:center;overflow:hidden;border-radius:24px;background:radial-gradient(ellipse at 50% 42%,#fff6ca 0%,#eef0d8 48%,#e1eddf 100%);padding:22px 14px;margin:0 0 22px}.v4-reward-celebration>small{letter-spacing:2px;color:#8e835f;font-size:10px}.v4-reward-celebration h3{font-size:22px;margin:6px 0 8px;word-break:keep-all}.v4-reward-celebration p{font-size:13px;margin:0 8px;word-break:keep-all}.v4-gift-emblem{display:grid;place-items:center;margin:22px auto;width:98px;height:98px;font-size:63px;color:#e1ae56;border-radius:32px;background:#fff6da;box-shadow:0 7px 0 #d3bc8140,0 0 45px #fff;transform:rotate(-8deg)}.is-new .v4-gift-emblem{animation:v4-gift-pop .7s cubic-bezier(.2,.8,.25,1.2)}.v4-gift-preview{height:200px;width:100%;position:relative;margin:-8px auto -8px;background:radial-gradient(ellipse 28% 8% at 50% 80%,#769b7430,transparent)}.v4-gift-preview canvas{position:relative;z-index:1;display:block;pointer-events:none}.v4-gift-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:80px;color:#82a580}.v4-gift-preview:has(canvas) .v4-gift-fallback{display:none}.v4-confetti{position:absolute;inset:0;pointer-events:none}.v4-confetti i{position:absolute;left:var(--x);top:38%;width:7px;height:12px;border-radius:3px;background:#d5ab72;opacity:0;animation:v4-confetti 1.7s var(--delay) ease-out 1}.v4-confetti i:nth-child(3n){background:#87b7a1}.v4-confetti i:nth-child(3n + 1){background:#dca6ac;width:9px;height:9px}.v4-placement-list button{transition:background .18s,transform .18s}.v4-placement-list button[aria-pressed=true]{transform:translateY(-2px);box-shadow:0 4px 0 #b9c8a740}.v4-quest{z-index:3}.v4-notice{max-width:430px;line-height:1.6}.v4-map{max-height:calc(100dvh - 180px);overflow:auto;box-sizing:border-box}
@keyframes v4-beacon-breathe{50%{transform:translateY(-6px);text-shadow:0 0 16px #ffda70,0 0 30px #fff1a1}}
@keyframes v4-dialog-enter{from{opacity:0;transform:translateY(9px) scale(.985)}to{opacity:1;transform:none}}
@keyframes v4-gift-pop{from{opacity:0;transform:translateY(18px) scale(.55) rotate(-18deg)}to{opacity:1;transform:rotate(-8deg)}}
@keyframes v4-confetti{0%{opacity:0;transform:translateY(20px) rotate(0)}15%{opacity:.9}100%{opacity:0;transform:translateY(-145px) rotate(170deg)}}
@media(max-width:700px){.v4-beacon-label strong{font-size:12px}.v4-beacon-label small{font-size:9px}.v4-beacon-label{z-index:2}.v4-reward-celebration h3{font-size:20px}.v4-gift-preview{height:180px}}
@media(prefers-reduced-motion:reduce){.v4-world *,.v4-dialog,.v4-dialog *{animation:none!important;transition:none!important}.v4-confetti{display:none}}

@media(min-width:701px){.v4-notice{top:87px;bottom:auto;right:26px;left:auto;transform:none;max-width:360px}}
