.sports-home-button{display:flex;gap:10px;align-items:center;width:100%;background:#d8c69b33;border:1px solid #97a07955;border-radius:13px;padding:11px 12px;margin-top:14px;color:inherit;text-align:left;cursor:pointer}.sports-home-button svg{width:32px}.sports-home-button span:nth-child(2){flex:1;font-size:13px}.sports-home-button small{display:block;font-size:10px;opacity:.72;margin-top:4px}dialog[data-view=sports],dialog[data-view=sports-certificate]{width:min(1120px,calc(100vw - 32px));max-width:1120px;color:#53634c;background:#f7f4e9}dialog[data-view^=sports] .dialog-header{border-bottom:1px solid #d4d8c6}dialog[data-view^=sports] button{font-family:inherit}.sports-topline{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:1.6px;color:#7d886e;margin:20px 0 12px}.sports-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.sports-heading h3{font-size:32px;margin:0 0 6px;font-weight:500;letter-spacing:3px}.sports-heading p{margin:0;font-size:13px;color:#839073}.sports-distance{display:grid;text-align:right}.sports-distance strong{font-size:40px;line-height:1;font-weight:500;font-family:Georgia,serif}.sports-distance span{font-size:10px;margin-top:5px}.sports-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(245px,1fr);gap:20px}.sports-course{border-radius:20px;overflow:hidden;background:#e5e9d5;align-self:start;border:1px solid #d5dcc6}#cycling-stage{height:410px;position:relative}#cycling-stage canvas{display:block;width:100%;height:100%}.sports-course-note{display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px;padding:12px;color:#788365;background:#edf0e1}.sports-course-note svg{width:30px}.sports-control{background:#fffcf3;padding:20px;border:1px solid #e0deca;border-radius:20px}.sports-control h4{font-size:22px;line-height:1.6;margin:7px 0 10px;font-weight:500}.sports-control p{font-size:12px;line-height:1.8;color:#7b8269;margin:8px 0}.sports-kicker{font-size:10px;letter-spacing:1.4px;color:#92966d}.sports-energy-summary{display:flex;align-items:baseline;gap:7px;font-size:12px;padding:10px 0}.sports-energy-summary strong{font-size:25px;font-family:Georgia,serif;color:#677850}.sports-energy-summary>span{opacity:.65}.sports-control .sports-rule,.sports-control .sports-admission{font-size:10px;line-height:1.8}.sports-primary{border:0;border-radius:10px;background:#687d55;color:#fffdf0;min-height:43px;padding:10px 20px;cursor:pointer;font-size:13px;letter-spacing:1px}.sports-control .sports-primary{width:100%;margin-top:8px}.sports-primary:disabled{opacity:.45;cursor:not-allowed}.sports-text-button{border:0;background:none;color:#718161;padding:10px 4px;cursor:pointer;font-size:12px}.sports-live-ranking{border-top:1px solid #e2e2d2;margin-top:13px;padding-top:6px}.sports-live-ranking h4{font-size:12px;font-weight:600}.sports-live-ranking ol{list-style:none;padding:0;margin:0}.sports-live-ranking li{display:flex;align-items:center;gap:10px;padding:8px 5px;border-radius:7px;font-size:12px}.sports-live-ranking .is-player{background:#eceddc}.sports-place{color:#9c9b7d;font-family:Georgia,serif}.sports-live-ranking li>span:nth-child(2){flex:1}.sports-live-ranking b{font-weight:500}.sports-live-ranking small{display:block;font-size:9px;color:#919780;margin-top:3px}.sports-live-ranking li>strong{font-size:11px;font-weight:500}.sports-race-caption{display:flex;justify-content:space-between;align-items:center;font-size:12px}.sports-race-caption strong{font-size:20px;font-weight:500}.sports-distance-track{height:6px;border-radius:9px;background:#e4e8d5;overflow:hidden}.sports-distance-track span{display:block;height:100%;background:#92a574;border-radius:9px}.sports-cadences{display:flex;gap:6px;margin-top:14px}.sports-cadences button{flex:1;min-width:0;background:transparent;border:1px solid #d1d8c1;color:#788867;padding:11px 3px;border-radius:9px;cursor:pointer}.sports-cadences button[aria-pressed=true]{background:#e4e9ce;border-color:#829665;color:#516141}.sports-cadences small{display:block;font-size:9px;margin-top:5px}.sports-cadences b{font-size:13px;font-weight:500}.sports-certificate-button{background:#e8d9ad;color:#77603b;border:1px solid #d5c294;padding:10px 15px;border-radius:10px;cursor:pointer;width:100%;margin-top:5px}.sports-records{border-top:1px solid #d7dbc9;margin-top:24px;padding-top:19px}.sports-records h4{font-size:17px;font-weight:500;margin:0 0 5px}.sports-records p{font-size:11px;color:#8a917a;margin:0 0 16px}#sports-history{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sports-record{display:grid;grid-template-columns:24px 1fr;gap:5px;text-align:left;background:#fffaf0;color:#758060;border:1px solid #dddcca;padding:13px;border-radius:10px;cursor:pointer}.sports-record>span{grid-row:span 3;font-size:22px;color:#b19856}.sports-record b{font-size:12px;font-weight:500}.sports-record small{font-size:9px}.sports-record em{font-size:10px;font-style:normal;margin-top:4px}.sports-record:disabled{cursor:default;opacity:.65}.sports-empty{grid-column:1/-1;border:1px dashed #cfd6bf;border-radius:10px;padding:20px}.sports-certificate-preview canvas{display:block;width:100%;height:auto;border-radius:9px}.sports-certificate-actions{display:flex;justify-content:center;gap:16px;margin-top:18px}.sports-render-error{padding:50px 25px;font-size:14px;line-height:2}#dialog[data-view^=sports] button:focus-visible{outline:3px solid #c49a42;outline-offset:3px}@media(max-width:760px){dialog[data-view=sports],dialog[data-view=sports-certificate]{width:calc(100vw - 16px);max-height:94svh}.sports-layout{grid-template-columns:1fr;gap:12px}#cycling-stage{height:270px}.sports-heading h3{font-size:25px}.sports-topline{font-size:8px;letter-spacing:.4px}.sports-distance strong{font-size:32px}.sports-control{padding:16px}.sports-live-ranking li{padding:6px}.sports-records{margin-top:17px}#sports-history{grid-template-columns:1fr 1fr}.sports-certificate-actions{flex-wrap:wrap}.sports-home-button{margin-top:10px}.sports-course-note{font-size:10px}}body.night #dialog[data-view^=sports]{background:#f7f4e9;color:#53634c;--ink:#53634c;--surface:#fffcf3;--line:#d4d8c6;--muted:#7b8269}#dialog[data-view^=sports] .sports-control,#dialog[data-view^=sports] .sports-control h4{color:#53634c}.sports-course-note button{border:1px solid #c5cfb4;border-radius:8px;padding:6px 9px;color:#718260;background:transparent;cursor:pointer;font-size:11px}.sports-course-note button[aria-pressed=true]{background:#d8e1c3;color:#52633f}.adopting #app{width:100%;height:auto;min-height:100svh;padding:0;max-width:none}.adopting{background:#f5f1e5;color:#687955}.adoption-page{max-width:1440px;margin:auto;padding:30px 5vw;min-height:100svh}.adoption-page header{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #a7ad8c55;padding-bottom:22px;font:20px Songti SC,serif}.adoption-page header small{display:block;font:9px Georgia,serif;letter-spacing:2px;margin-top:6px}.adoption-page button{cursor:pointer}.adoption-page header button,.adopt-actions button{border:1px solid #a4ad8d;border-radius:28px;background:transparent;padding:13px 22px;color:#677c53}.adoption-local{font:11px sans-serif;color:#8d9879}.adoption-layout{display:grid;grid-template-columns:43% 57%;min-height:700px;align-items:center}.adoption-copy{padding:42px 0;position:relative;z-index:1}.adoption-eyebrow{font:10px Georgia,serif;letter-spacing:2px}.adoption-steps{display:flex;gap:18px;margin:30px 0;color:#9ca58d;font-size:11px}.adoption-steps .active{color:#567044;border-bottom:1px solid;padding-bottom:8px}.adoption-copy h1{font:clamp(32px,3.5vw,52px)/1.6 "Songti SC",serif;letter-spacing:3px;margin:20px 0}.adoption-copy>p{line-height:1.9}.adoption-copy #adopt-description{font-size:13px;max-width:350px;color:#829070;min-height:50px}.pet-choices{display:flex;gap:12px;margin:26px 0}.pet-choices button{border:1px solid #d5d8c3;border-radius:16px;background:#f9f7ed;padding:15px;flex:1;text-align:left;color:#728061;max-width:190px}.pet-choices button[aria-pressed=true]{border-color:#82936c;background:#e7ebd7}.pet-choices button>span{display:block;width:60px;height:60px;margin-bottom:12px}.pet-choices button strong{display:block;font:18px Songti SC,serif}.pet-choices button small{display:block;font-size:10px;line-height:1.7;margin-top:7px}.adopt-name{display:grid;gap:12px;margin:30px 0;font-size:13px;max-width:340px}.adopt-name input{border:1px solid #adb895;border-radius:12px;padding:15px;background:#fffdf5;color:#526740;font:20px Songti SC,serif;width:100%}.adopt-name small,.adoption-fine{font-size:11px;color:#8d987c}.adopt-actions{display:flex;gap:10px;margin-top:24px}.adopt-actions #adopt-next{background:#73895c;color:#fff8e6;border-color:#73895c}.adoption-stage{position:relative;min-width:0}.adoption-stage #adopt-canvas{height:600px;width:100%;touch-action:none}.adoption-caption{text-align:center;margin-top:-20px;pointer-events:none}.adoption-caption span{font:13px Georgia,serif;letter-spacing:3px}.adoption-caption p{font:23px Songti SC,serif}.adoption-caption small{color:#9aa38b;font-size:10px}#adopt-review{font:20px Songti SC,serif}#adopt-error{color:#a35f4b;font-size:12px}.adopting [hidden]{display:none!important}.pet-extra{display:flex;gap:8px;margin-top:12px}.pet-extra button{flex:1;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:10px 6px;font-size:11px}.pet-extra .icon{width:14px;height:14px;vertical-align:middle}.profile-access{display:flex;gap:8px;margin-top:9px}.profile-access button{padding:4px 0;border:0;background:none;color:inherit;font-size:10px;text-align:left;flex:1}.profile-list{display:grid;gap:12px}.profile-card{display:flex;align-items:center;gap:15px;padding:15px;border:1px solid var(--line);border-radius:14px}.profile-card>span{width:56px;flex-shrink:0}.profile-card strong{font-size:17px}.profile-card p{font-size:11px;color:var(--sage)}.profile-card button{margin-left:auto}.tutorial-card{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.tutorial-card p{font-size:13px;line-height:1.9}.rename-field{display:block;margin:14px 0;width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}@media(max-width:760px){.adoption-page{padding:20px}.adoption-page header{font-size:17px}.adoption-local{display:none}.adoption-layout{display:flex;flex-direction:column-reverse;min-height:0}.adoption-stage{width:100%}.adoption-stage #adopt-canvas{height:310px}.adoption-caption{margin-top:-15px}.adoption-caption p{font-size:17px;margin:8px}.adoption-caption small{display:none}.adoption-copy{width:100%;padding:24px 0}.adoption-copy h1{font-size:30px;margin:12px 0;line-height:1.4}.adoption-eyebrow{display:none}.adoption-steps{margin:4px 0 15px}.pet-choices{margin:18px 0}.pet-choices button{max-width:none}.pet-choices button>span{float:left;width:45px;height:45px;margin:0 9px 0 0}.pet-choices button small{clear:both;padding-top:8px}.adopt-actions button{min-height:44px}.adopt-name{max-width:none}.pet-extra{gap:4px;margin-top:8px}.pet-extra button{font-size:9px;padding:8px 3px}.pet-extra .icon{display:none}.profile-access button{font-size:9px}.adopting .adoption-page header button{font-size:11px;padding:10px}.profile-card{flex-wrap:wrap}}.profile-name>span{font-size:8px;letter-spacing:.5px}.profile-access .icon{height:14px;width:14px;vertical-align:middle}@media(max-width:760px){.profile .pet-extra,.profile .profile-access{position:absolute;left:calc(176px - 100vw);width:calc(100vw - 192px);margin:0}.profile .pet-extra{top:198px}.profile .profile-access{top:241px}.profile .pet-extra button{min-height:36px;font-size:11px;background:var(--surface)}.profile .profile-access button{font-size:10px;min-height:30px}}.profile-name{min-width:0}.profile-name strong{display:block;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-copy strong{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-card>div{min-width:0}.profile-card strong{overflow-wrap:anywhere}@media(max-width:760px){.profile-name strong{max-width:77px}.brand-copy strong{max-width:225px}}:root{font-family:ui-rounded,Hiragino Maru Gothic ProN,PingFang SC,Microsoft YaHei,sans-serif;color:#4d503f;background:#f6f3e9;font-synthesis:none;font-weight:400;--green:#697c58;--ink:#4d503f;--muted:#939283;--paper:#fffcf3;--line:#e3e0d3;--surface:rgba(255,253,246,.86)}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button{border:0;background:none}button:focus-visible,a:focus-visible{outline:3px solid #b09260;outline-offset:5px}button:disabled{cursor:not-allowed;opacity:.4}button:hover{color:#586b45}button:active{transform:translateY(1px)}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}button{transition:background .2s,color .2s,box-shadow .2s}#app{min-height:100svh;position:relative;overflow:hidden}#app:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.26;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%238b7a5e' opacity='.22' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.site-header{height:100px;position:relative;z-index:3;margin:0 4.1%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{display:flex;align-items:center;gap:13px}.brand-mark{width:45px;height:45px}.brand-copy{display:flex;flex-direction:column;gap:5px}.brand-copy strong{font-size:20px;letter-spacing:2px;font-weight:650}.brand-copy small{font-family:Georgia,serif;font-size:10px;letter-spacing:2.6px;color:var(--muted)}nav{display:flex;gap:37px;height:100%;align-items:center;margin-left:70px}nav button{height:100%;position:relative;font-size:13px;letter-spacing:1px;color:#939181}nav button.selected{color:var(--green);font-weight:600}nav button.selected:after{content:"";height:4px;width:4px;background:var(--green);border-radius:50%;position:absolute;bottom:19px;left:50%}.header-tools{display:flex;align-items:center;gap:15px}.day-switch{display:flex;gap:8px;align-items:center;background:#ebeade;border-radius:24px;padding:9px 14px;font-size:12px}.day-switch .icon{width:17px;height:17px}.tool-button{display:grid;place-items:center;width:33px;height:33px;border-radius:50%}.tool-button:hover{background:#e7e8d9}.tool-button .icon{width:20px;height:20px}.world{position:absolute;inset:100px 0 112px;z-index:1}.world canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.intro{position:absolute;z-index:2;left:4.6%;top:151px;pointer-events:none}.eyebrow{font-family:Georgia,serif;font-size:11px;letter-spacing:3px;color:#979779;display:flex;align-items:center;gap:9px}.eyebrow:before{content:"";width:18px;height:1px;background:#9aa184}.intro h1{font-family:Songti SC,"Noto Serif CJK SC",STSong,serif;font-weight:500;font-size:43px;line-height:1.5;letter-spacing:4px;margin:22px 0 17px;color:#535b43}.intro p{font-size:12px;color:#92917f;line-height:2.1;letter-spacing:1px;margin:0}.season-pill{display:inline-flex;align-items:center;gap:8px;margin-top:25px;padding:8px 12px;border:1px solid #dedfcf;border-radius:25px;font-size:11px;color:#848b6e;letter-spacing:1px}.season-pill .icon{width:15px;height:15px}.small-dot{height:3px;width:3px;border-radius:50%;background:#a6aa92}.profile{position:absolute;right:4.5%;top:159px;z-index:2;width:222px;background:var(--surface);border:1px solid #e5e1d3;border-radius:20px;padding:21px 20px 19px;box-shadow:0 8px 30px #79664304}.profile-top{display:flex;align-items:center;gap:12px}.portrait{width:62px;height:62px;flex-shrink:0}.profile-name strong{font-size:18px;font-weight:600;letter-spacing:2px}.profile-name span{font-size:9px;font-family:Georgia,serif;color:#a2a38c;margin-left:5px;letter-spacing:1px}.profile-name p{font-size:11px;color:#9c9c86;margin:8px 0 0}.profile hr{border:0;border-top:1px dashed #dddccc;margin:18px 0 14px}.status-kicker{font-size:10px;color:#a09d8a;display:flex;justify-content:space-between;letter-spacing:1px}.live-dot{display:flex;gap:4px;align-items:center;font-size:9px;color:#8e9c7b}.live-dot:before{content:"";width:5px;height:5px;border-radius:50%;background:#8d9f73}.current-action{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:10px;color:#697c58;min-height:25px}.current-action .icon{width:19px;height:19px}.progress-track{height:3px;background:#e6e8d9;margin:13px 0 17px;border-radius:3px;overflow:hidden}.progress-fill{height:100%;width:0;background:#a5b08d;border-radius:3px}.feeling{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#aaa38c}.feeling span:first-child{display:flex;align-items:center;gap:5px}.feeling .icon{width:13px;height:13px;color:#c49276}.feeling strong{font-weight:400;color:#8b9576}.auto-row{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid #ece7da;font-size:11px;color:#95927e}.toggle{width:29px;height:17px;padding:2px;border-radius:20px;background:#cbcbbd}.toggle[aria-checked=true]{background:#879772}.toggle:after{content:"";display:block;width:13px;height:13px;border-radius:50%;background:#fffdf3;transition:transform .2s}.toggle[aria-checked=true]:after{transform:translate(12px)}.note{position:absolute;left:4.7%;bottom:227px;z-index:2;width:195px;transform:rotate(-3deg);background:#efeddf;padding:22px 17px 16px;border-radius:2px 2px 17px}.note:before{content:"";position:absolute;width:56px;height:18px;top:-7px;left:68px;background:#dcdcc5ad;transform:rotate(7deg)}.note .note-head{font-size:10px;color:#99967d;letter-spacing:1px}.note p{font-family:Songti SC,STSong,serif;font-size:13px;line-height:1.9;letter-spacing:1px;margin:12px 0 9px;color:#83866c}.note small{display:block;text-align:right;font-size:10px;color:#92957a}.note .icon{width:15px;height:15px;margin-left:3px}.view-controls{position:absolute;z-index:2;right:4.6%;bottom:224px;display:flex;flex-direction:column;align-items:center;gap:8px}.control-group{display:flex;flex-direction:column;gap:2px;background:var(--surface);padding:6px;border:1px solid var(--line);border-radius:25px}.control-group button{width:34px;height:33px;display:grid;place-items:center;border-radius:50%}.control-group button:hover{background:#eaecdf}.control-group .icon{width:17px;height:17px}.control-group .divider{height:1px;background:#e9e5d9;margin:3px 7px}.photo-button{height:44px;width:44px;border:1px solid var(--line);border-radius:50%;background:var(--surface)}.photo-button .icon{width:19px;height:19px}.world-caption{position:absolute;bottom:181px;left:50%;transform:translate(-50%);font-size:10px;color:#a2a28b;z-index:2;display:flex;align-items:center;gap:9px;white-space:nowrap;pointer-events:none}.world-caption .icon{width:13px;height:13px}.caption-dot{margin:0 4px;color:#c2c1ae}.bubble{position:absolute;top:40%;left:50%;z-index:2;transform:translate(-50%,-100%);padding:9px 15px;border-radius:15px 15px 15px 4px;background:#fffdf4f2;box-shadow:0 3px 15px #594e3d10;border:1px solid #e9e4d6;font-size:12px;color:#83866c;pointer-events:none;white-space:nowrap;transition:opacity .3s}.bubble.sleep{font-family:Georgia,serif;letter-spacing:4px;font-size:18px}.bottom-area{position:absolute;left:50%;bottom:35px;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:15px}.action-dock{display:flex;align-items:center;gap:5px;padding:10px;background:#fffdf4eb;border:1px solid #e6e3d5;border-radius:23px;box-shadow:0 7px 24px #574e3410}.action-button{position:relative;width:100px;height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border-radius:15px;font-size:12px;color:#96927c;letter-spacing:1px}.action-button>.icon{width:27px;height:27px;color:#898d70;transition:transform .2s}.action-button:hover{background:#f0f0e4}.action-button:hover>.icon{transform:translateY(-3px)}.action-button.active{background:#e7ebdc;color:#65754f}.action-button.active>.icon{color:#718255}.action-button .key{position:absolute;top:6px;right:9px;font-size:9px;font-family:Georgia,serif;color:#b8b9a3}.action-button.active:after{content:"";width:4px;height:4px;background:#88976b;border-radius:50%;position:absolute;bottom:7px}.pause-control{display:flex;flex-direction:column;align-items:center;gap:8px}.pause-button{display:grid;place-items:center;height:48px;width:48px;background:#758462;border-radius:50%;color:#fffdf2;box-shadow:0 4px 12px #75846220}.pause-button:hover{background:#62764e;color:#fff}.pause-button .icon{width:18px;height:18px}.pause-control small{color:#9b9b87;font-size:10px}.bottom-label{position:absolute;bottom:158px;left:50%;transform:translate(-50%);z-index:3;font-size:10px;letter-spacing:2px;color:#a6a58f;display:flex;align-items:center;gap:10px}.bottom-label:before,.bottom-label:after{content:"";width:27px;height:1px;background:#d5d8c5}.footer-note{position:absolute;bottom:24px;left:4.7%;font-size:9px;letter-spacing:1.4px;color:#b0ad99;z-index:2}.footer-right{right:4.7%;left:auto;display:flex;gap:5px;align-items:center}.footer-right .icon{width:12px;height:12px}.tooltip{position:fixed;z-index:10;background:#5f6f50;color:#fff9e8;font-size:11px;padding:8px 12px;border-radius:10px;pointer-events:none;transform:translate(-50%,-120%);opacity:0;transition:opacity .15s}.tooltip.visible{opacity:1}.toast{position:fixed;z-index:30;left:50%;top:112px;transform:translate(-50%,-10px);background:#697c58;color:#fffbe9;padding:11px 20px;border-radius:20px;font-size:12px;opacity:0;pointer-events:none;transition:all .25s}.toast.visible{opacity:1;transform:translate(-50%)}dialog{color:var(--ink);border:1px solid var(--line);border-radius:24px;padding:32px;max-width:430px;width:calc(100% - 36px);background:#fbf8ee;box-shadow:0 24px 100px #3b3c2725}dialog::backdrop{background:#4b4c3b44;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.dialog-header h2{font-family:Songti SC,serif;font-size:23px;font-weight:500;letter-spacing:2px;margin:0}.dialog-header button{padding:5px}.dialog-desc{font-size:12px;color:#96927d;line-height:1.9}.help-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.help-row span:last-child{color:#a09c84;font-size:11px}.journal-entry{border-left:2px solid #d4dcc6;padding:0 0 20px 19px;position:relative}.journal-entry:before{content:"";width:6px;height:6px;background:#9cac83;border:3px solid #fbf8ee;position:absolute;left:-7px;top:1px;border-radius:50%}.journal-entry time{font-size:10px;color:#999980}.journal-entry p{font-size:12px;line-height:1.7;margin:6px 0 0}.journal-list{max-height:350px;overflow:auto;margin-top:22px}.loading{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;background:#f6f3e9;font-size:13px;color:#909776;letter-spacing:2px;transition:opacity .6s}.loading img{width:60px;animation:breathe 1.4s infinite}.loading.done{opacity:0;pointer-events:none}@keyframes breathe{50%{transform:translateY(-7px)}}.fallback{z-index:25;text-align:center;padding:30px}.fallback h2{font-size:23px}.fallback p{font-size:13px;line-height:2;max-width:400px}.fallback button{padding:12px 20px;background:#798a65;color:#fff;border-radius:20px}body.night{--ink:#d7d5bd;--muted:#9b9e86;--paper:#353d35;--line:#56604e;--surface:rgba(51,60,49,.92);background:#252f2b;color:#d7d5bd}body.night .intro h1{color:#d5d9bd}body.night .intro p,body.night .eyebrow{color:#a7ab92}body.night .brand-copy strong{color:#c6cfb6}body.night .day-switch{background:#3e4c3a;color:#d6d7ba}body.night .profile{border-color:#536049}body.night .profile hr{border-color:#59604f}body.night .current-action{color:#b6c59b}body.night .auto-row{border-color:#515847}body.night .note{background:#3a4435}body.night .note p{color:#b2b89b}body.night .action-dock{background:#364231;border-color:#505e43}body.night .action-button.active{background:#59684a;color:#e3e8cd}body.night .action-button.active>.icon{color:#d4e0bb}body.night .action-button:hover{background:#49573e}body.night .bubble{background:#414d38;border-color:#61724f;color:#e8e5ca}body.night dialog{background:#354030;color:#d7d9bf}body.night .progress-track{background:#536046}@media(min-width:1600px){.intro h1{font-size:51px}.intro{top:175px}.profile{top:180px;width:245px}.world{inset:105px 100px 115px}.note{bottom:260px}.view-controls{bottom:255px}}@media(max-width:1150px){.intro h1{font-size:33px}.intro{left:4%;top:139px}.intro p{font-size:11px}.profile{width:193px;right:3%;top:145px;padding:16px}.profile-name strong{font-size:16px}.portrait{width:50px;height:50px}.note{width:165px;left:4%;padding:20px 13px 13px;bottom:217px}.note p{font-size:11px}.view-controls{right:3%;bottom:207px}.action-button{width:89px}.footer-note{font-size:8px}nav{margin-left:0;gap:20px}.world{inset:110px 20px 148px}.intro p br{display:none}.intro p{width:170px}.world-caption{bottom:176px}.bottom-area{bottom:30px}}@media(max-width:760px){#app{min-height:840px;height:100svh}.site-header{height:78px;margin:0 22px;gap:12px}.brand-mark{width:36px;height:36px}.brand{gap:9px}.brand-copy strong{font-size:16px;letter-spacing:1.5px}.brand-copy small{font-size:8px;letter-spacing:1.7px}nav{display:none}.header-tools{gap:4px}.day-switch{padding:8px 10px}.day-switch span{display:none}.header-tools>.tool-button:last-child{display:none}.intro{top:110px;left:25px}.eyebrow{font-size:9px;letter-spacing:2px}.intro h1{font-size:29px;line-height:1.45;letter-spacing:3px;margin:12px 0 9px}.intro p{font-size:10px;line-height:1.8;width:180px}.season-pill{font-size:9px;margin-top:14px;padding:6px 9px}.profile{top:113px;right:22px;width:132px;padding:13px;border-radius:16px}.profile-top{gap:7px}.portrait{width:39px;height:39px}.profile-name strong{font-size:14px;letter-spacing:1px}.profile-name span{display:none}.profile-name p{font-size:8px;white-space:nowrap;margin-top:5px}.profile hr{margin:11px 0}.status-kicker{font-size:8px;letter-spacing:0}.live-dot{font-size:7px}.current-action{font-size:10px;gap:5px;margin-top:5px;white-space:nowrap}.current-action .icon{width:14px;height:14px}.progress-track{margin:8px 0 10px}.feeling{font-size:8px}.feeling .icon{width:10px;height:10px}.auto-row{font-size:9px;padding-top:9px;margin-top:10px}.toggle{width:27px;height:16px}.toggle:after{width:12px;height:12px}.toggle[aria-checked=true]:after{transform:translate(11px)}.world{inset:279px -16px 188px}.note{display:none}.view-controls{right:20px;bottom:192px;flex-direction:row}.control-group{flex-direction:row;border-radius:20px;padding:3px}.control-group button{height:30px;width:29px}.control-group .divider{height:18px;width:1px;margin:6px 2px}.photo-button{height:37px;width:37px}.bottom-area{bottom:51px;gap:9px;width:calc(100% - 32px);justify-content:center}.action-dock{padding:6px;gap:2px;border-radius:18px;flex:1;justify-content:space-between}.action-button{width:calc((100vw - 116px)/5);min-width:42px;height:72px;font-size:10px;gap:8px;letter-spacing:0;border-radius:12px}.action-button>.icon{height:23px;width:23px}.action-button .key{display:none}.action-button.active:after{bottom:5px}.pause-button{width:37px;height:37px}.pause-control small{font-size:9px}.bottom-label{bottom:149px;font-size:9px;letter-spacing:1.5px}.world-caption{bottom:171px;font-size:8px;gap:5px}.world-caption .icon{height:11px;width:11px}.footer-note{left:24px;bottom:18px;font-size:8px}.footer-right{right:24px;left:auto}.bubble{font-size:10px;padding:7px 11px}.toast{top:85px;font-size:11px}.photo-button .icon{width:17px;height:17px}}@media(max-width:390px){.header-tools{gap:0}.brand-copy strong{font-size:14px}.site-header{margin:0 16px}.profile{right:16px;width:127px}.intro{left:20px}.intro h1{font-size:27px}.intro p{width:156px}.season-pill{letter-spacing:0}.action-button{min-width:39px}.action-dock{gap:0}.bottom-area{gap:7px;width:calc(100% - 24px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(min-width:761px)and (max-height:800px){.world{bottom:146px}.intro{top:140px}.intro h1{font-size:36px;margin:17px 0 14px}.intro p{font-size:11px;max-width:232px}.intro .season-pill{margin-top:17px}.note{bottom:178px;width:180px;padding:20px 15px 13px}.note p{font-size:11px;margin:9px 0 7px}.profile{top:145px;padding:16px 18px}.profile hr{margin:14px 0 12px}.view-controls{bottom:202px;flex-direction:row;gap:8px}.control-group{flex-direction:row;border-radius:23px;padding:4px}.control-group .divider{width:1px;height:19px;margin:7px 3px}.control-group button{width:29px}.photo-button{width:42px;height:42px}.world-caption{bottom:177px}.bottom-label{bottom:155px}}@media(max-width:760px){.eyebrow{font-size:8px;letter-spacing:1.2px;gap:6px}.eyebrow:before{width:12px}}[hidden]{display:none!important}.site-header nav{gap:23px;margin-left:0}.site-header nav .icon{width:12px;height:12px;margin-left:2px}.album-count{font-size:9px;display:inline-grid;place-items:center;min-width:17px;height:17px;background:#e6e9d9;color:#819067;border-radius:50%;letter-spacing:0;margin-left:3px}.profile{width:238px;padding:18px 19px}.profile hr{margin:15px 0 12px}.profile .progress-track{margin:10px 0 17px}.needs{border-top:1px dashed #e0dfd0;padding-top:13px}.need-row{display:flex;justify-content:space-between;align-items:center;margin:0 0 7px;font-size:11px}.need-row>span{display:flex;align-items:center;gap:5px}.need-row .icon{height:14px;width:14px;color:#8b9d70}.need-row small{font-size:9px;margin-left:3px;color:#9b9c86}.need-row strong{font-weight:500;white-space:nowrap}.need-row strong b{font-weight:550;font-size:12px}.need-row strong i{font-style:normal;font-size:8px;color:#a7aa93;margin-left:3px}.need-track{height:5px;border-radius:10px;background:#e7eadb;overflow:hidden;margin-bottom:13px}.need-track>span{display:block;height:100%;background:#98ab7e;border-radius:10px;transition:width .4s linear}.need-track.low>span{background:#c99870}.need-track.mood>span{background:#cba58b}.needs-hint{font-size:9px;color:#9d9f83;line-height:1.7;margin:0;min-height:30px}.auto-row{margin-top:10px;padding-top:10px}.action-button{width:88px}.dock-divider{height:38px;width:1px;background:#e7e5d8;margin:0 4px}.travel-action{background:#edf0e2;color:#7a8c62}.travel-action .icon{color:#758a5c}.action-button:disabled{opacity:.35;transform:none;cursor:default}.footer-right{gap:14px}.footer-right button{font-size:10px;padding:3px 0;display:flex;align-items:center;gap:4px}.footer-right .album-count{height:14px;min-width:14px;font-size:8px}.outdoors{background:#eff1e3}.outdoors.night{background:#26372f}.journey-panel{position:absolute;z-index:2;left:4.6%;bottom:228px;width:220px;padding:21px 18px 17px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.journey-kicker{font-family:Georgia,serif;font-size:8px;letter-spacing:1.8px;color:#a0a68b}.journey-panel h2{font-family:Songti SC,serif;font-size:24px;font-weight:500;letter-spacing:3px;margin:14px 0 10px}.journey-panel p{font-size:11px;line-height:1.8;color:#959c81;margin:0}.journey-countdown{display:flex;align-items:center;justify-content:space-between;margin-top:17px;padding-top:13px;border-top:1px dashed var(--line);font-size:10px;color:#9b9f85}.journey-countdown strong{font-family:Georgia,serif;font-size:19px;letter-spacing:2px;font-weight:400;color:#7c8c69}.return-button{display:flex;align-items:center;justify-content:center;gap:6px;background:#edf0e3;border-radius:20px;width:100%;padding:9px;margin-top:13px;font-size:11px;color:#81936c}.return-button .icon{height:14px;width:14px}dialog[data-view=map],dialog[data-view=album],dialog[data-view=photo]{width:min(820px,calc(100% - 40px));max-width:820px;max-height:88svh;padding:29px 31px;overflow:auto}dialog[data-view=map] .dialog-header h2{font-size:25px}.dialog-header{margin-bottom:17px}.map-summary{display:flex;align-items:center;gap:6px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;margin:20px 0;font-size:11px;color:#929b7e}.map-summary>.icon{width:15px;height:15px}.map-summary strong{font-size:17px;color:#788e61}.map-summary-right{margin-left:auto;font-size:10px}.destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.destination-card{border:1px solid #e2e4d3;border-radius:16px;overflow:hidden;background:#fffdf5}.destination-art{height:137px;background:#eef0e1;position:relative;overflow:hidden}.destination-art svg{width:100%;height:100%;padding:7px 14px 0}.destination-art>span{position:absolute;left:12px;top:12px;font:11px Georgia,serif;color:#929d7b}.destination-body{padding:18px 15px 15px}.destination-body>small{font:8px Georgia,serif;letter-spacing:1.6px;color:#a0a58d}.destination-body h3{font-size:20px;letter-spacing:2px;font-family:Songti SC,serif;font-weight:500;display:flex;align-items:center;justify-content:space-between;margin:10px 0}.destination-body h3 .icon{width:20px;height:20px;color:var(--destination)}.destination-body p{font-size:11px;line-height:1.9;min-height:62px;color:#959581;margin:0 0 12px}.friend-line{display:flex;align-items:center;gap:6px;font-size:10px;color:#989d83;margin-bottom:15px}.friend-line .icon{width:14px;height:14px}.trip-stats{display:flex;justify-content:space-between;border-top:1px dashed #e3e4d6;padding-top:13px;font-size:10px;color:#8f987f}.trip-stats .icon{height:12px;width:12px;margin-right:3px}.destination-body>button{margin-top:17px;background:var(--destination);color:#fffcec;border-radius:25px;width:100%;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;font-size:11px}.destination-body>button:disabled{background:#e7e8dc;color:#959b83;opacity:1}.destination-body>button .icon{width:14px;height:14px}.map-foot{display:flex;align-items:center;justify-content:space-between;margin-top:21px;font-size:10px;color:#9da18a;gap:10px}.soft-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:24px;padding:10px 16px;font-size:11px;white-space:nowrap}.soft-button{background:#edf0e2;color:#80936a}.primary-button{background:#82956c;color:#fffbed}.primary-button:hover{background:#6b8157;color:#fff}.soft-button .icon,.primary-button .icon{height:16px;width:16px}.album-tabs{display:flex;gap:7px;margin:20px 0 24px;border-bottom:1px solid var(--line);padding-bottom:14px}.album-tabs button{font-size:11px;border-radius:20px;padding:8px 14px;color:#9a9f87}.album-tabs button.active{background:#e7ecda;color:#72865f}.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 16px}.photo-card{background:#fffdf6;padding:8px 8px 13px;border:1px solid #e4e2d6;border-radius:4px;box-shadow:0 3px 7px #81705008;text-align:left;min-width:0;transition:transform .2s}.photo-card:nth-child(3n+1){transform:rotate(-1deg)}.photo-card:nth-child(3n+3){transform:rotate(1deg)}.photo-card:hover{transform:translateY(-4px)}.photo-card img{width:100%;aspect-ratio:1.12;object-fit:cover;background:#eeefdf;border-radius:2px}.photo-caption{font-family:Songti SC,serif;font-size:14px;display:block;line-height:1.7;margin:10px 4px 4px}.photo-card>small{font-size:9px;color:#a3a58e;margin:0 4px;display:block;line-height:1.6}.local-note{font-size:10px;color:#a8ab95;text-align:center;margin:26px 0 0}.album-empty{text-align:center;padding:24px 10px 30px;display:flex;align-items:center;flex-direction:column;gap:13px}.album-empty>.icon{width:52px;height:52px;color:#a7b190}.album-empty h3{font-family:Songti SC,serif;font-weight:400;font-size:22px;letter-spacing:2px;margin:5px 0}.album-empty p{font-size:11px;color:#999e85;line-height:1.8;margin:0 0 6px}.photo-full{width:100%;max-height:53svh;object-fit:contain;background:#eff0e4;border:8px solid #fffdf6;border-radius:5px}.photo-detail-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a0a58b;margin:15px 0}.photo-detail-meta .icon{width:12px;height:12px}.photo-story{font:15px/1.9 Songti SC,serif;color:#889476;margin:8px 0 19px;letter-spacing:1px}.photo-actions{display:flex;justify-content:flex-end;gap:9px}.photo-actions>button:first-child{margin-right:auto}.journal-mood{display:flex;gap:5px;align-items:center;font-size:9px;color:#a6a086;margin-top:8px}.journal-mood .icon{width:11px;height:11px}.journal-list{max-height:52svh}.night .need-track{background:#4e5c43}.night .needs{border-color:#5c654f}.night .destination-card,.night .photo-card{background:#3d4937;border-color:#606b52}.night .destination-art{background:#56634a}.night .destination-body p{color:#b8bea5}.night .map-summary strong,.night .journey-countdown strong{color:#cad7b5}.night .photo-full{border-color:#4c5b42;background:#303c2f}@media(min-width:761px)and (max-height:800px){.profile{top:139px;padding:15px 17px;width:226px}.profile-top .portrait{width:49px;height:49px}.profile hr{margin:11px 0}.profile .progress-track{margin:8px 0 12px}.needs{padding-top:10px}.need-track{margin-bottom:10px}.needs-hint{min-height:16px}.view-controls{bottom:187px}.journey-panel{bottom:186px;width:190px;padding:17px 15px}.journey-panel h2{font-size:22px;margin:10px 0}.journey-panel p{font-size:10px}.journey-countdown{margin-top:12px;padding-top:9px}.return-button{padding:7px}.action-button{width:82px}.site-header nav{gap:19px}.intro p{max-width:238px}}@media(max-width:1150px)and (min-width:761px){.site-header nav{gap:15px}.site-header nav button{font-size:11px}.brand-copy strong{font-size:17px}.profile{right:2.6%;width:205px}.need-row small{font-size:8px}.profile-name p{font-size:10px}.header-tools{gap:7px}.intro h1{font-size:33px}.journey-panel{width:170px;left:3%}.journey-panel p{font-size:10px}}@media(max-width:760px){.profile{width:147px;right:18px;top:108px;padding:12px}.profile-top{gap:7px}.portrait{width:36px;height:36px}.profile-name p{font-size:7px}.profile hr{margin:9px 0}.profile .progress-track{margin:7px 0 10px}.needs{padding-top:9px}.need-row{font-size:9px;margin-bottom:5px}.need-row>span{gap:3px}.need-row .icon{width:10px;height:10px}.need-row small{display:none}.need-row strong b{font-size:10px}.need-row strong i{font-size:7px}.need-track{height:4px;margin-bottom:8px}.needs-hint{font-size:7px;line-height:1.6;min-height:23px}.auto-row{margin-top:7px;padding-top:7px;font-size:8px}.world{top:350px;bottom:180px}.intro{left:22px;top:109px}.intro h1{font-size:29px}.intro p{width:172px;font-size:9px;line-height:1.9}.intro .eyebrow{font-size:7px;letter-spacing:.9px;gap:4px}.intro .eyebrow:before{width:10px}.intro .season-pill{font-size:8px;padding:6px 8px}.journey-panel{top:298px;left:22px;bottom:auto;width:185px;background:none;border:0;padding:0}.journey-kicker{display:none}.journey-panel h2{font-size:18px;margin:0;display:inline-block;letter-spacing:2px}.journey-panel p{display:none}.journey-countdown{display:inline-flex;gap:7px;border:0;padding:0;margin:0 0 0 10px;font-size:8px}.journey-countdown strong{font-size:13px;letter-spacing:1px}.return-button{width:auto;padding:6px 10px;margin-top:8px;font-size:9px}.return-button .icon{height:12px;width:12px}.view-controls{bottom:189px}.bottom-area{width:calc(100% - 24px);gap:7px;bottom:52px}.action-dock{padding:5px;gap:1px}.action-button{width:calc((100vw - 90px)/6);min-width:34px;font-size:9px;height:69px;gap:7px}.action-button>.icon{width:21px;height:21px}.dock-divider{margin:0 2px;height:28px}.travel-action{border-radius:12px}.pause-button{height:33px;width:33px}.pause-button .icon{width:14px;height:14px}.pause-control small{font-size:8px}.bottom-label{font-size:8px;letter-spacing:.8px;bottom:150px;white-space:nowrap}.bottom-label:before,.bottom-label:after{width:16px}.world-caption{font-size:7px;bottom:171px;gap:4px}.footer-note{font-size:7px;left:21px}.footer-right{left:auto;right:19px;gap:13px}.footer-right button{font-size:9px}.footer-right .icon{width:12px;height:12px}.footer-right .album-count{height:13px;min-width:13px;font-size:7px}.current-action{font-size:9px;gap:4px}.current-action .icon{width:13px;height:13px}.bubble{font-size:9px}.dialog-header h2,dialog[data-view=map] .dialog-header h2{font-size:21px;letter-spacing:1px}dialog[data-view=map],dialog[data-view=album],dialog[data-view=photo]{width:calc(100% - 24px);padding:21px 18px;border-radius:19px;max-height:89svh}.dialog-desc{font-size:11px}.destination-grid{grid-template-columns:1fr;gap:13px}.destination-card{display:grid;grid-template-columns:104px 1fr;border-radius:13px}.destination-art{height:100%;min-height:189px}.destination-art svg{padding:0;width:140%;margin-left:-20%;height:100%}.destination-body{padding:13px}.destination-body>small{font-size:7px;letter-spacing:1px}.destination-body h3{font-size:18px;margin:7px 0}.destination-body p{font-size:10px;min-height:0;margin-bottom:8px;line-height:1.7}.friend-line{font-size:9px;margin-bottom:9px}.trip-stats{font-size:9px;padding-top:8px}.destination-body>button{margin-top:11px;font-size:10px;padding:8px 11px}.map-summary{margin:14px 0;font-size:10px}.map-summary-right{font-size:8px;max-width:133px;text-align:right}.map-summary strong{font-size:15px}.map-foot{align-items:flex-start;font-size:9px;line-height:1.7}.map-foot .soft-button{font-size:9px;padding:8px 10px}.album-tabs{gap:3px;margin:16px 0;padding-bottom:12px}.album-tabs button{padding:7px 9px;font-size:10px}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px}.photo-card{padding:6px 6px 10px}.photo-caption{font-size:12px;margin:6px 2px 3px}.photo-card>small{font-size:8px;margin:0 2px}.photo-actions{gap:6px;flex-wrap:wrap}.photo-actions button{font-size:9px;padding:8px 10px}.photo-detail-meta{font-size:8px;gap:10px;line-height:1.8}.photo-story{font-size:13px}.album-empty h3{font-size:18px}.album-empty p{font-size:10px}.local-note{font-size:8px}.photo-full{border-width:5px}.journey-panel .return-button:disabled{opacity:.55}}@media(max-width:390px){.profile{right:14px;width:144px}.intro{left:18px}.intro h1{font-size:27px}.intro p{width:158px}.intro .eyebrow{font-size:6.5px;letter-spacing:.7px}.action-button{min-width:32px}.bottom-area{width:calc(100% - 20px);gap:6px}.journey-panel{left:18px}}@media(min-width:761px)and (max-height:670px){#app{min-height:740px}.profile,.intro{top:125px}.note{bottom:177px}.view-controls{bottom:190px}}@media(min-width:761px)and (max-height:800px){.travelling .intro p,.travelling .intro .season-pill{visibility:hidden}}.site-header nav{gap:16px}.site-header nav button{font-size:11px}.packing-panel{border:1px solid #d9dfc8;background:#edf0e1;border-radius:18px;padding:20px;margin-bottom:21px}.packing-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.packing-heading small{font:8px Georgia,serif;letter-spacing:1.8px;color:#959f83}.packing-heading h3{font:22px Songti SC,serif;letter-spacing:2px;margin:8px 0 17px;color:#647451}.pantry-count{font-size:10px;color:#8d977a;white-space:nowrap}.pantry-count .icon{width:14px;height:14px;margin-right:5px}.pantry-count b{font-size:17px;color:#667f50}.packing-slots{display:grid;grid-template-columns:1fr 1.4fr;gap:12px}.food-slot{display:flex;align-items:center;gap:12px;background:#f8f5e9;border:1px solid #dedfcc;border-radius:13px;padding:13px;text-align:left}.food-slot>.icon{width:29px;height:29px;color:#ad9365}.food-slot strong{display:block;font-size:12px;font-weight:500}.food-slot small{display:block;font-size:9px;color:#9da188;margin-top:6px}.food-slot>span:last-child{margin-left:auto;font-size:18px;color:#8c9f72}.food-slot.selected,.tool-options .selected{border-color:#8d9e73;background:#fbf9ed;box-shadow:inset 0 0 0 1px #8d9e7322}.tool-options{display:flex;gap:7px}.tool-options button{flex:1;padding:10px 4px;border:1px solid #daddcc;border-radius:13px;background:#f5f4e8;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;font-size:9px}.tool-options .icon{height:24px;width:24px;color:#81956b}.packing-hint{font-size:10px;color:#939d80;line-height:1.8;margin:12px 0}.packing-bottom{display:flex;justify-content:space-between;gap:10px}.packing-bottom .soft-button{background:#dde4ce;font-size:10px}.map-foot{flex-wrap:wrap}.map-foot>span{flex:1}.map-foot button{font-size:10px}.has-visitor:after{content:"•";color:#bc8869;margin-left:4px}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:26px 0 16px}.collection-heading h3{font:19px Songti SC,serif;margin:0}.collection-heading>span{font-size:10px;color:#929b80}.collection-heading .icon{width:13px;height:13px}.treasure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.treasure-card{padding:17px 10px;border:1px dashed #d5d8c5;border-radius:16px;background:#f0f0e4;text-align:center}.treasure-card.owned{border-style:solid;background:#fffbee}.treasure-art{width:100%;height:117px;display:grid;place-items:center;position:relative}.treasure-art:before{content:"";position:absolute;width:80px;height:80px;background:#e2e6d1;border-radius:50%}.treasure-art>.icon{position:relative;width:46px;height:46px;color:#9aa586}.owned .bookmark>.icon,.treasure-art.bookmark>.icon{color:#b69d5b}.owned .stone>.icon{color:#8b9f98}.owned .pebble>.icon{color:#7ba39c}.treasure-card strong{display:block;font:18px Songti SC,serif;letter-spacing:2px;margin:9px 0}.treasure-card small{font-size:9px;color:#989e83;line-height:1.8}.return-recap{padding:17px;border:1px solid #dde1ce;border-radius:14px;display:flex;gap:15px;align-items:center;background:#eaf0de;margin:18px 0}.return-recap>.icon{width:32px;height:32px;color:#90a275}.return-recap small,.return-recap span{font-size:9px;color:#959d83;display:block}.return-recap strong{font:16px Songti SC,serif;display:block;margin:6px 0;letter-spacing:1px}.friend-list{display:grid;gap:9px}.friend-card{border-bottom:1px solid #e3e3d3;padding:12px 0;display:flex;gap:12px;align-items:center}.friend-card>.icon{width:25px;height:25px;color:#9aab83}.friend-card strong{display:block;font-size:12px;font-weight:500}.friend-card small{display:block;font-size:9px;color:#9ba38b;margin-top:5px}.friend-card button{margin-left:auto}.collection-actions{display:flex;justify-content:center;gap:12px;margin-top:23px}.treasure-story{font:18px/2 Songti SC,serif;letter-spacing:1px;text-align:center;color:#7d8b69}.album-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin:25px 0;font-size:11px;color:#92a07d}.album-tabs{flex-wrap:wrap}.journal-photo{font-size:9px;padding:6px 12px;margin-top:5px}.night .packing-panel,.night .return-recap{background:#424e38;border-color:#657055}.night .food-slot,.night .tool-options button,.night .treasure-card{background:#364530;border-color:#59684f}.night .food-slot.selected,.night .tool-options .selected,.night .treasure-card.owned{background:#516144}.night .packing-heading h3{color:#d4dbbc}.night .treasure-art:before{background:#526149}.night .treasure-story{color:#bdcba9}dialog[data-view=collection]{width:min(760px,calc(100% - 40px));max-width:760px;max-height:88svh;overflow:auto;padding:29px 31px}@media(max-width:1150px)and (min-width:761px){.site-header nav{gap:10px}.site-header nav button{font-size:9px}}@media(max-width:760px){.packing-panel{padding:14px}.packing-heading{align-items:flex-start}.packing-heading h3{font-size:18px;letter-spacing:1px;margin-bottom:13px}.packing-heading small{font-size:6px;letter-spacing:1px}.pantry-count{font-size:8px;white-space:nowrap;line-height:1.7}.packing-heading{flex-wrap:wrap;gap:0 8px}.packing-heading .pantry-count{margin-bottom:12px}.packing-slots{grid-template-columns:1fr}.food-slot{padding:10px}.tool-options button{padding:11px 3px}.packing-bottom .soft-button{font-size:8px;padding:8px}.packing-hint{font-size:9px}.treasure-grid{gap:7px}.treasure-card{padding:9px 5px}.treasure-art{height:86px}.treasure-art:before{width:61px;height:61px}.treasure-art>.icon{width:36px;height:36px}.treasure-card strong{font-size:14px;letter-spacing:0}.treasure-card small{font-size:8px}.collection-heading h3{font-size:16px}.collection-heading>span{font-size:8px}.return-recap strong{font-size:14px;line-height:1.6}.friend-card .primary-button{font-size:9px;padding:8px}.friend-card small{font-size:8px}.footer-right{gap:9px}.footer-right button{font-size:8px}.album-tabs button{padding:6px 8px;font-size:9px}.collection-actions .primary-button,.collection-actions .soft-button{font-size:10px;padding:10px 12px}dialog[data-view=collection]{width:calc(100% - 24px);padding:21px 18px}.treasure-story{font-size:16px}}.companion-button{display:flex;align-items:center;gap:8px;width:100%;padding:12px 0 0;margin-top:12px;border:0;border-top:1px solid #b3b99c55;background:none;font-size:10px;color:#849171;text-align:left}.companion-button>.icon:last-child{margin-left:auto}.companion-button .icon{width:15px;height:15px}.atlas-section{margin:10px 0 24px}.atlas-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.atlas-heading small,.companion-hero small{font:8px Georgia,serif;letter-spacing:1.5px;color:#99a388}.atlas-heading h3{font:22px Songti SC,serif;letter-spacing:1px;margin:10px 0 17px}.atlas-map{position:relative;height:235px;overflow:hidden;border-radius:18px;background:#eff0df;border:1px solid #d7ddc7}.atlas-map>svg{position:absolute;width:100%;height:100%}.atlas-pin{position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:4px;border:0;background:none;color:#647556;min-width:84px;padding:7px}.atlas-pin>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff7e9;border:1px solid #a7b599}.atlas-pin .icon{width:20px;height:20px}.atlas-pin strong{font:13px Songti SC,serif;letter-spacing:1px}.atlas-pin small{font-size:8px}.atlas-pin.active>span,.atlas-pin:hover>span{background:#718958;color:#fff8e8}.atlas-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;color:#8b987b;padding:12px 3px}.atlas-foot button{border:0;background:none;color:inherit;font-size:10px}.atlas-foot .icon{width:13px;height:13px}.all-maps{margin-bottom:12px}.destination-card[hidden]{display:none!important}.destination-grid.focused{grid-template-columns:1fr}.destination-grid.focused .destination-card{display:grid;grid-template-columns:1fr 1.4fr}.destination-grid.focused .destination-art{min-height:235px;height:100%}.destination-grid.focused .destination-art svg{height:100%}.tool-options{display:grid;grid-template-columns:repeat(4,1fr)}.treasure-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.treasure-card strong{font-size:15px;letter-spacing:0}.treasure-art{height:95px}.passport-link{display:block;margin:18px auto 0}.companion-hero{display:flex;gap:20px;align-items:center;padding:20px;background:#e9eedc;border:1px solid #dce2cc;border-radius:17px;margin:15px 0 20px}.companion-hero h3{font:23px Songti SC,serif;margin:10px 0}.companion-hero p{font-size:12px;line-height:1.9;margin:0;color:#889674}.companion-seal{display:grid;place-items:center;flex:0 0 64px;height:64px;border:1px solid #aebc94;border-radius:50%;color:#829764}.companion-seal .icon{width:32px;height:32px}.habit-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px}.habit-row span{display:flex;align-items:center;gap:6px;color:#8e977d}.habit-row .icon{width:17px;height:17px}.habit-row b{color:#708658}.rhythm-section{padding:18px 0;border-top:1px solid #dedfcc}.rhythm-section h3{font:19px Songti SC,serif;margin:0 0 16px}.rhythm-section h3 small{font:11px sans-serif;color:#8c997b;margin-left:12px}.choice-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice-pair button,.offline-choice,.season-choices button{border:1px solid #d6ddc5;border-radius:12px;background:#f3f3e6;color:#7b8a68;padding:14px;text-align:left}.choice-pair strong,.offline-choice strong{font-size:13px;display:block;font-weight:500}.choice-pair small,.offline-choice small{font-size:10px;line-height:1.8;margin-top:7px;display:block;color:#929e7f}.choice-pair [aria-pressed=true],.season-choices [aria-pressed=true]{border-color:#8ca572;background:#e4ebd6;color:#617d4c}.offline-choice{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:14px;gap:20px}.offline-choice b{font:12px sans-serif;border-radius:20px;background:#d6dfc6;padding:6px 12px}.offline-choice[aria-checked=true] b{background:#81966c;color:#fffbee}.season-choices{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}.season-choices button{font-size:11px;padding:10px 14px}.passport-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.passport-place{border:1px dashed #d2dac3;border-radius:16px;padding:17px;background:#f1f2e6}.passport-place.stamped{border-style:solid;background:#fcf8ec}.passport-stamp{display:grid;justify-items:center;gap:8px;color:#a0a98f}.stamped .passport-stamp{color:#859b6c}.passport-stamp .icon{width:30px;height:30px}.passport-stamp strong{font:18px Songti SC,serif}.passport-stamp small{font-size:9px}.passport-place ul{list-style:none;margin:18px 0;padding:0;font-size:10px;line-height:2.4;color:#a0a98f}.passport-place .found{color:#6d8959}.passport-place button{font-size:9px;padding:9px}.moment-label{font-size:10px;border-top:1px solid #a6b59355;margin-top:18px;padding-top:16px}.moment-options{display:grid;gap:6px}.moment-options button{padding:9px 10px;border:1px solid #d3ddc7;border-radius:10px;background:#eff3e6;color:#7f906b;text-align:left}.moment-options span{font-size:11px}.moment-options small{font-size:8px;display:block;opacity:.8;margin-top:4px}.moment-done{font:13px Songti SC,serif;line-height:1.7;border-top:1px solid #a6b59355;padding-top:15px}.moment-done small{font:10px/1.8 sans-serif;display:block;margin-top:8px;color:#8b997c}.journey-panel{max-height:55svh;overflow:auto}.night .atlas-map{filter:brightness(.8)}.night .companion-hero,.night .passport-place,.night .choice-pair button,.night .offline-choice,.night .season-choices button,.night .moment-options button{background:#394d40;border-color:#6d7e63;color:#c9d3b5}.night .companion-hero h3,.night .rhythm-section h3{color:#d9dfca}.night .choice-pair [aria-pressed=true],.night .season-choices [aria-pressed=true]{background:#617451;color:#f4f3df}.night .companion-button{color:#bdc9a9}@media(max-width:760px){.companion-button{padding-top:7px;margin-top:7px;font-size:9px}.atlas-heading h3{font-size:17px;max-width:200px}.atlas-heading small{font-size:6px;letter-spacing:1px}.atlas-heading .soft-button{padding:9px;font-size:9px}.atlas-map{height:224px}.atlas-pin{min-width:60px;padding:4px;gap:3px}.atlas-pin strong{font-size:11px;letter-spacing:0}.atlas-pin small{font-size:7px}.atlas-pin>span{height:29px;width:29px}.atlas-pin .icon{width:16px;height:16px}.atlas-foot{font-size:8px;line-height:1.8;align-items:flex-start}.atlas-foot button{font-size:8px;white-space:nowrap}.tool-options{grid-template-columns:repeat(2,1fr)}.tool-options button{flex-direction:row;gap:7px}.tool-options .icon{width:20px;height:20px}.treasure-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.treasure-card strong{font-size:13px}.passport-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.passport-place{padding:12px 9px}.passport-stamp strong{font-size:15px}.passport-place ul{font-size:9px}.passport-place button{padding:7px;font-size:8px}.companion-hero{padding:15px;gap:12px}.companion-hero h3{font-size:18px}.companion-hero p{font-size:10px}.companion-seal{flex-basis:43px;height:43px}.companion-seal .icon{width:24px;height:24px}.habit-row{gap:10px;font-size:9px}.habit-row .icon{width:14px;height:14px}.choice-pair button{padding:12px}.choice-pair strong,.offline-choice strong{font-size:11px}.season-choices{gap:6px}.season-choices button{font-size:10px;padding:8px 10px}.journey-panel{max-height:none}.moment-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.moment-options button{padding:8px 6px}.moment-options span{font-size:9px}.moment-options small{font-size:7px}.moment-label{padding-top:10px;margin-top:10px}.moment-done{font-size:11px}.moment-done small{font-size:9px}.destination-grid.focused .destination-card{grid-template-columns:.7fr 1.3fr}.destination-grid.focused .destination-art{min-height:190px}.footer-right{gap:7px}}dialog[data-view=companion],dialog[data-view=passport],dialog[data-view=away]{width:min(760px,calc(100% - 40px));max-width:760px;max-height:88svh;overflow:auto;padding:29px 31px}@media(max-width:760px){dialog[data-view=companion],dialog[data-view=passport],dialog[data-view=away]{width:calc(100% - 24px);padding:21px 18px}}@media(max-width:760px){body.travelling #app{min-height:930px;height:max(100svh,930px)}.travelling .world{top:365px;bottom:280px}.travelling .view-controls{bottom:280px}.travelling .world-caption{display:none}.travelling .journey-panel{overflow:visible}.journey-panel #moment-panel{position:absolute;top:365px;left:0;width:calc(100vw - 36px);padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.journey-panel #moment-panel:empty{display:none}.journey-panel #moment-panel p{display:block}.journey-panel #moment-panel .moment-label{border:0;padding:0;margin:0 0 8px;font-size:10px}.journey-panel #moment-panel .moment-done{border:0;padding:0;margin:0}.journey-panel #moment-panel .moment-done small{font-size:9px;line-height:1.7}}.night .passport-stamp,.night .stamped .passport-stamp{color:#e3e5c7}.night .passport-place ul,.night .companion-hero p,.night .habit-row span,.night .choice-pair small,.night .offline-choice small,.night .moment-done small{color:#ced7bd}.night .passport-place .found,.night .habit-row b{color:#edf1c6}@media(max-width:760px){.passport-place ul{font-size:11px;line-height:2.3}.passport-place button{font-size:10px;min-height:36px}.moment-options span{font-size:11px}.moment-options small{font-size:9px}.moment-options button{min-height:56px}}
