@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#2c2528;--muted:#786c70;--paper:#fbf5f1;--paper-deep:#f0e2dc;--red:#c96572;--red-dark:#914752;--blue:#263f46;--gold:#d7b17b;--line:#17212626}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Noto Sans CJK SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}.shell{width:min(1180px,100% - 48px);margin:0 auto}.hero{color:#fffaf1;background:radial-gradient(circle at 82% 31%,#c9657257,#0000 28%),linear-gradient(115deg,#1a3137fc,#36373ff5 58%,#5d3944e6),repeating-linear-gradient(0deg,#0000 0 28px,#ffffff06 29px 30px);min-height:670px;position:relative;overflow:hidden}.hero:before{content:"Miao & Duck";color:#ffffff0b;letter-spacing:-.06em;white-space:nowrap;font:italic 500 clamp(72px,12vw,170px)/1 Georgia,serif;position:absolute;bottom:75px;right:4vw;transform:rotate(-5deg)}.hero:after{content:"";background:var(--paper);clip-path:polygon(0 62%,9% 45%,20% 62%,31% 38%,42% 58%,54% 25%,66% 56%,78% 34%,90% 57%,100% 44%,100% 100%,0 100%);height:105px;position:absolute;bottom:0;left:0;right:0}.petals{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.petals span{color:#f7bfc86b;filter:blur(.1px);font:400 16px/1 serif;animation:13s linear infinite petalFall;position:absolute;top:-8%}.petals span:first-child{animation-duration:15s;animation-delay:-2s;left:8%}.petals span:nth-child(2){font-size:11px;animation-duration:18s;animation-delay:-10s;left:25%}.petals span:nth-child(3){font-size:20px;animation-duration:17s;animation-delay:-6s;left:44%}.petals span:nth-child(4){font-size:12px;animation-duration:20s;animation-delay:-13s;left:63%}.petals span:nth-child(5){font-size:18px;animation-duration:16s;animation-delay:-4s;left:79%}.petals span:nth-child(6){font-size:10px;animation-duration:19s;animation-delay:-8s;left:94%}@keyframes petalFall{0%{opacity:0;transform:translateY(-30px)rotate(0)}10%{opacity:.75}55%{transform:translate(55px,360px)rotate(220deg)}to{opacity:0;transform:translate(-35px,760px)rotate(500deg)}}.nav{z-index:2;border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:center;height:88px;display:flex;position:relative}.brand{letter-spacing:.14em;align-items:center;gap:10px;font:700 13px/1 ui-monospace,SFMono-Regular,monospace;display:flex}.brand span{color:#fff;background:var(--red);letter-spacing:0;border-radius:50%;place-items:center;width:34px;height:34px;font-family:serif;font-size:18px;display:grid;box-shadow:0 0 0 5px #ffffff12}.navLinks{color:#ffffffb8;gap:32px;font-size:14px;display:flex}.navLinks form{margin:0}.navLinks button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.navLinks a:hover,.navLinks button:hover{color:#fff}.heroBody{z-index:2;padding-top:86px;padding-bottom:145px;position:relative}.eyebrow,.kicker{letter-spacing:.18em;color:var(--red);font:700 12px/1.4 ui-monospace,SFMono-Regular,monospace}.hero .eyebrow{color:#efb5bd}.hero h1{letter-spacing:-.055em;max-width:940px;margin:22px 0;font:500 clamp(56px,8vw,108px)/.98 Georgia,Noto Serif SC,serif}.hero h1 em{color:#f2cfad;text-shadow:0 10px 40px #c965722e;font-style:normal}.heroCopy{color:#ffffffb8;max-width:560px;font-size:17px;line-height:1.8}.loveSignature{color:#fff7f0;align-items:center;gap:11px;margin-top:24px;font:500 16px/1 Georgia,Noto Serif SC,serif;display:flex}.loveSignature button{color:#ef9cab;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font:400 20px/1 Georgia,serif;transition:color .2s,transform .2s,background .2s;display:grid}.loveSignature button:hover,.loveSignature button[aria-expanded=true]{color:#fff;background:#ef9cab2e;transform:scale(1.16)}.loveSignature button:focus-visible{outline-offset:3px;outline:2px solid #f2c98c}.loveSignature small{color:#ffffff70;letter-spacing:.12em;border-left:1px solid #fff3;margin-left:6px;padding-left:18px;font:700 9px/1.3 ui-monospace,monospace}.heroMeta{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(110deg,#23393ee6,#4c353ee0);border:1px solid #ffffff38;border-radius:16px;gap:1px;width:fit-content;margin-top:34px;display:flex;overflow:hidden;box-shadow:0 18px 48px #141c1f33}.heroMeta div{border-right:1px solid #ffffff29;min-width:155px;padding:16px 26px}.heroMeta div:last-child{border:0;min-width:210px}.heroMeta span,.heroMeta strong{display:block}.heroMeta span{color:#ffffff8c;letter-spacing:.08em;margin-bottom:7px;font-size:11px}.heroMeta strong{font:600 16px/1.2 ui-monospace,SFMono-Regular,monospace}.sun{background:linear-gradient(145deg,#cf7180,#a74e5c);border-radius:50%;place-items:center;width:330px;height:330px;display:grid;position:absolute;top:126px;right:7vw;box-shadow:0 0 0 38px #c965721a,0 0 0 76px #c965720d}.sun:before,.sun:after{content:"";border:1px solid #ffffff29;border-radius:50%;position:absolute}.sun:before{inset:27px}.sun:after{inset:54px}.sun span{writing-mode:vertical-rl;letter-spacing:.24em;color:#ffffff30;font:400 58px/1 serif}.sun i{color:#ffffff52;font:34px/1 Georgia,serif;position:absolute;bottom:70px;left:65px}.secretNote{z-index:8;color:#fffaf1;background:linear-gradient(135deg,#593440fa,#263f46fa);border:1px solid #f2c98c52;border-radius:6px 22px 22px;width:min(330px,100% - 32px);padding:25px 28px 24px;animation:.35s ease-out secretReveal;position:absolute;bottom:22px;left:50%;box-shadow:0 24px 70px #121b1e61}.secretNote:before{content:"";background:#68404b;width:14px;height:14px;position:absolute;top:-7px;left:22px;transform:rotate(45deg)}.secretNote>button{color:#ffffff8c;cursor:pointer;background:0 0;border:0;width:28px;height:28px;padding:0;font-size:19px;position:absolute;top:12px;right:12px}.secretNote>span,.secretNote>strong{display:block}.secretNote>span{color:#efb5bd;letter-spacing:.15em;font:700 8px/1 ui-monospace,monospace}.secretNote>strong{margin-top:12px;font:500 19px/1.3 Georgia,Noto Serif SC,serif}.secretNote p{color:#ffffff9e;margin:9px 0 0;font-size:11px;line-height:1.7}@keyframes secretReveal{0%{opacity:0;transform:translateY(8px)scale(.97)}}.travelModeSection{z-index:9;margin-top:-72px;position:relative}.travelModeCard{color:#fffaf1;background:linear-gradient(115deg,#233f45fa,#543640fa);border:1px solid #ffffff47;border-radius:24px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:24px;min-height:136px;padding:24px 30px;display:grid;overflow:hidden;box-shadow:0 24px 65px #311f2533}.travelModeCard:after{content:"♡";color:#ffffff09;pointer-events:none;font:400 110px/1 Georgia,serif;position:absolute;right:25%}.travelModeSeal{border:1px solid #f2c98c6b;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;box-shadow:inset 0 0 0 6px #ffffff09}.travelModeSeal span{color:#f2c98c;font:500 22px/1 Georgia,Noto Serif SC,serif}.travelModeCopy{z-index:1;position:relative}.travelModeCopy small,.travelModeCopy strong{display:block}.travelModeCopy small{color:#efb5bd;letter-spacing:.13em;font:700 9px/1.3 ui-monospace,monospace}.travelModeCopy strong{margin-top:8px;font:500 24px/1.2 Georgia,Noto Serif SC,serif}.travelModeCopy p{color:#ffffff91;max-width:680px;margin:7px 0 0;font-size:11px;line-height:1.6}.travelModeCard>a{z-index:1;color:#f2c98c;background:#ffffff0d;border:1px solid #ffffff2e;border-radius:100px;justify-content:space-between;align-items:center;gap:18px;min-width:154px;padding:12px 15px;font-size:11px;display:flex;position:relative}.travelModeCard>a:hover{color:var(--blue);background:#f2c98c}.travelMode-during .travelModeCard{background:linear-gradient(115deg,#1f4d4a,#80505c);box-shadow:0 24px 75px #277c7240}.travelMode-during .travelModeSeal{animation:2.4s ease-in-out infinite travelPulse}@keyframes travelPulse{50%{box-shadow:inset 0 0 0 6px #ffffff09,0 0 0 9px #efb5bd14}}.travelDebugBar{color:var(--ink);background:#ffffffd1;border:1px dashed #9147524d;border-radius:14px;align-items:center;gap:18px;margin-top:12px;padding:12px 15px;display:flex;box-shadow:0 10px 30px #311f2512}.travelDebugBar>div:first-child{margin-right:auto}.travelDebugBar b,.travelDebugBar span{display:block}.travelDebugBar b{color:var(--red-dark);letter-spacing:.08em;font:700 10px/1.3 ui-monospace,monospace}.travelDebugBar span{color:var(--muted);margin-top:3px;font-size:9px}.travelDebugModes{gap:5px;display:flex}.travelDebugModes button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #263f4629;border-radius:100px;padding:7px 10px;font-size:10px}.travelDebugModes button:hover,.travelDebugModes button.active{color:#fff;border-color:var(--blue);background:var(--blue)}.travelDebugBar label{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:9px;display:flex}.travelDebugBar select{max-width:230px;height:32px;color:var(--ink);background:#fff;border:1px solid #263f4633;border-radius:8px;padding:0 28px 0 10px;font-size:10px}.travelDebugModes button:focus-visible,.travelDebugBar select:focus-visible{outline:2px solid var(--red);outline-offset:2px}.sectionSecretTrigger,.mapSecretTrigger,.loveLetterSecret,.footerSecretTrigger{color:#c9657273;cursor:pointer;background:0 0;border:0;transition:all .2s}.sectionSecretTrigger{margin:12px 0 0;padding:0 8px 0 0;font-size:16px}.sectionSecretTrigger:hover,.mapSecretTrigger:hover,.footerSecretTrigger:hover{color:var(--red);transform:scale(1.16)rotate(8deg)}.sectionSecretTrigger:focus-visible,.mapSecretTrigger:focus-visible,.loveLetterSecret:focus-visible,.footerSecretTrigger:focus-visible,.izuSecretTrigger:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.routeSection{padding:90px 0 110px}.sectionHead{grid-template-columns:1.2fr .8fr;align-items:end;gap:70px;margin-bottom:64px;display:grid}.sectionHead.compact{margin-bottom:32px}.sectionHead h2{letter-spacing:-.035em;margin:12px 0 0;font:500 clamp(34px,4.5vw,58px)/1.1 Georgia,Noto Serif SC,serif}.sectionHead>p{color:var(--muted);margin:0;font-size:14px;line-height:1.8}.routeRail{grid-template-columns:repeat(5,1fr);display:grid;position:relative}.routeRail:before{content:"";background:linear-gradient(90deg, var(--red), var(--gold), var(--red));opacity:.62;height:1px;position:absolute;top:22px;left:10%;right:10%}.stay{text-align:center;padding:0 13px;position:relative}.routeDot{z-index:1;background:var(--paper);border:1px solid #91475280;border-radius:50%;width:45px;height:45px;margin:0 auto 25px;padding:5px;position:relative;box-shadow:0 5px 18px #9147521f}.routeDot span{color:#fff;background:var(--red);border-radius:50%;place-items:center;width:100%;height:100%;font:700 12px/1 ui-monospace,monospace;display:grid}.stayDate{color:var(--red);letter-spacing:.08em;margin:0;font:700 11px/1.2 ui-monospace,monospace}.stay h3{margin:8px 0 4px;font:500 21px/1.2 Georgia,Noto Serif SC,serif}.stay>strong{font-size:13px}.stayHotel{min-height:53px;color:var(--ink);margin:14px auto 0;font-size:12px;font-weight:650;line-height:1.45}.stayHotel span{width:fit-content;color:var(--red-dark);letter-spacing:.08em;background:#c965721c;border-radius:100px;margin:0 auto 6px;padding:3px 7px;font:700 8px/1 ui-monospace,monospace;display:block}.stayHotel a,.dayStayLink{text-underline-offset:3px;-webkit-text-decoration:underline #d94b3d59;text-decoration:underline #d94b3d59;transition:color .2s,text-decoration-color .2s}.stayHotel a:hover,.dayStayLink:hover{color:var(--red-dark);-webkit-text-decoration-color:var(--red-dark);-webkit-text-decoration-color:var(--red-dark);-webkit-text-decoration-color:var(--red-dark);text-decoration-color:var(--red-dark)}.stayHotel a:focus-visible,.dayStayLink:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:2px}.stayHotel i,.dayStayLink i{color:var(--red);margin-left:4px;font-size:10px;font-style:normal}.stay>p:last-child{max-width:170px;color:var(--muted);margin:10px auto 0;font-size:12px;line-height:1.55}.mapSection{color:#fffaf1;background:radial-gradient(circle at 90% 10%, #c965722e, transparent 25%), var(--blue);padding:100px 0 110px;position:relative}.mapHeading .kicker{color:#efb6ad}.mapHeading h2{color:#fffaf1}.mapHeading>p{color:#ffffff9e}.mapDayTabs{scrollbar-width:thin;gap:7px;margin-bottom:18px;padding:2px 0 8px;display:flex;overflow-x:auto}.mapDayTabs button{color:#ffffffa8;cursor:pointer;background:0 0;border:1px solid #ffffff38;border-radius:100px;flex:none;min-width:48px;padding:9px 13px;font:700 11px/1 ui-monospace,monospace;transition:all .2s}.mapDayTabs button:first-child{min-width:64px}.mapDayTabs button:hover,.mapDayTabs button.active{color:var(--blue);background:#f2c98c;border-color:#f2c98c}.mapDayTabs button:focus-visible{outline-offset:2px;outline:2px solid #fff}.mapSecretTrigger{color:#efb5bd61;margin:-20px 4px 13px auto;padding:4px 8px;font:400 20px/1 Georgia,serif;display:block}.mapCard{background:#ffffff0e;border:1px solid #ffffff29;border-radius:24px;grid-template-columns:310px minmax(0,1fr);min-height:590px;display:grid;overflow:hidden;box-shadow:0 28px 70px #0a1b1f38}.mapRouteList{padding:36px 32px;overflow-y:auto}.mapRouteList>span{color:#efb6ad;letter-spacing:.14em;font:700 10px/1.3 ui-monospace,monospace}.mapRouteList h3{margin:12px 0 28px;font:500 26px/1.2 Georgia,Noto Serif SC,serif}.mapTravelers{background:#ffffff0e;border:1px solid #f2c98c33;border-radius:11px;justify-content:space-between;align-items:center;gap:9px;margin:-12px 0 18px;padding:9px 10px;display:flex}.mapTravelerCopy{min-width:0}.mapTravelerCopy span,.mapTravelerCopy small{display:block}.mapTravelerCopy span{color:#ffffffad;font-size:9px;line-height:1.35}.mapTravelerCopy small{color:#f2c98c;margin-top:4px;font-size:8px}.mapTravelerCopy i{margin-right:2px;font-size:13px;font-style:normal}.mapTravelerActions{flex:none;gap:4px;display:flex}.mapTravelers button{color:#f2c98c;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff29;border-radius:100px;flex:none;padding:5px 8px;font-size:8px}.mapTravelers button:hover,.mapTravelers button.active{color:var(--blue);background:#f2c98c}.mapTravelers button:focus-visible{outline-offset:2px;outline:2px solid #fff}.mapTravelerSprite{z-index:1000;pointer-events:none;will-change:left, top;width:52px;height:48px;position:absolute;transform:translate(-50%,-82%)}.mapTravelerFacing{transform-origin:50%;width:100%;height:100%;transition:transform .16s;display:block;position:relative}.mapTravelerBodyFacing{transform-origin:50%;transition:transform .16s;position:absolute;inset:0}.mapTravelerBody{z-index:2;filter:drop-shadow(0 3px 2px #141e213d);transform-origin:50% 100%;animation:.42s ease-in-out infinite mapTravelerWalk;display:block;position:absolute;bottom:9px;left:8px}.mapTraveler-cat .mapTravelerBody{font-size:31px}.mapTraveler-duck .mapTravelerBody{font-size:28px;animation-delay:-.18s;left:10px}.mapTravelerShadow{filter:blur(1px);background:#18272b33;border-radius:50%;width:30px;height:7px;animation:.42s ease-in-out infinite mapTravelerShadowStep;position:absolute;bottom:6px;left:8px}.mapTravelerDust{border:2px solid #c9657285;border-radius:50%;width:5px;height:5px;animation:.84s ease-out infinite mapTravelerDust;position:absolute;bottom:12px;left:2px}.mapTraveler-duck .mapTravelerDust{border-color:#d7b17bb8;animation-delay:-.34s}.mapTravelerVehicle{z-index:1;filter:drop-shadow(0 3px 3px #141e2133);font-size:31px;animation:.8s ease-in-out infinite mapTravelerRide;display:none;position:absolute;bottom:4px;left:-10px}.mapTravelerSprite.isRiding{width:62px}.mapTravelerSprite.isRiding .mapTravelerBodyFacing{transform:scaleX(-1)}.mapTravelerSprite.isRiding .mapTravelerVehicle{display:block}.mapTravelerSprite.isRiding .mapTravelerBody{font-size:18px;animation:.9s ease-in-out infinite mapTravelerPassenger;bottom:15px;left:24px}.mapTravelerSprite.isRiding .mapTravelerShadow{width:40px;left:1px}.mapTravelerSprite.isRiding .mapTravelerDust{display:none}.mapTravelerSprite.isPaused .mapTravelerBody,.mapTravelerSprite.isPaused .mapTravelerShadow,.mapTravelerSprite.isPaused .mapTravelerDust,.mapTravelerSprite.isPaused .mapTravelerVehicle{animation-play-state:paused}@keyframes mapTravelerWalk{0%,to{transform:translateY(0)rotate(-3deg)}25%{transform:translateY(-4px)rotate(2deg)scaleY(.98)}50%{transform:translateY(0)rotate(4deg)}75%{transform:translateY(-3px)rotate(-1deg)scaleY(.97)}}@keyframes mapTravelerShadowStep{0%,50%,to{opacity:.68;transform:scaleX(1)}25%,75%{opacity:.4;transform:scaleX(.78)}}@keyframes mapTravelerDust{0%{opacity:0;transform:translate(7px,1px)scale(.4)}25%{opacity:.8}to{opacity:0;transform:translate(-9px,-5px)scale(1.25)}}@keyframes mapTravelerRide{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-2px)rotate(2deg)}}@keyframes mapTravelerPassenger{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.mapRouteList ol{margin:0;padding:0;list-style:none}.mapRouteList li{grid-template-columns:26px 1fr;align-items:center;gap:11px;min-height:42px;display:grid;position:relative}.mapRouteList li:not(:last-child):after{content:"";background:#fff3;width:1px;position:absolute;top:28px;bottom:-3px;left:12px}.mapRouteList li b{z-index:1;width:26px;height:26px;color:var(--blue);background:#f2c98c;border-radius:50%;place-items:center;font:700 10px/1 ui-monospace,monospace;display:grid;position:relative}.mapRouteList li a{border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:6px 8px;transition:all .18s;display:flex}.mapRouteList li a:hover{background:#ffffff14}.mapRouteList li em{color:#ffffffc7;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-style:normal;line-height:1.4;overflow:hidden}.mapRouteList li small{color:#f2c98c;opacity:.72;flex:none;font-size:8px}.mapCanvasWrap{background:#d9e0dc;min-width:0;min-height:590px;position:relative}.mapCanvas{width:100%;height:100%;min-height:590px}.mapTimeTint{z-index:2;pointer-events:none;transition:background .22s linear;position:absolute;inset:0}.mapTimeBadge{z-index:3;color:#fffaf1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;letter-spacing:.04em;background:#172d34a8;border:1px solid #ffffff75;border-radius:100px;padding:7px 10px;font:700 9px/1 ui-monospace,monospace;position:absolute;top:13px;left:13px;box-shadow:0 5px 18px #0f222824}.mapState{z-index:4;color:var(--ink);text-align:center;background:#e3e1d9;place-content:center;gap:8px;padding:24px;font-size:13px;display:grid;position:absolute;inset:0}.mapState.error strong,.mapState.error span{display:block}.mapState.error strong{margin-bottom:8px;font:500 23px/1.2 Georgia,serif}.mapState.error span{color:var(--muted)}.loveLetterSection{color:#fffaf1;background:radial-gradient(circle at 15% 20%,#c965723b,#0000 26%),radial-gradient(circle at 82% 78%,#d7b17b24,#0000 25%),linear-gradient(135deg,#213a40,#3f343d 58%,#603946);place-items:center;min-height:680px;display:grid;position:relative;overflow:hidden}.loveLetterSection:before,.loveLetterSection:after{content:"";border:1px solid #f2c98c29;border-radius:50%;position:absolute}.loveLetterSection:before{width:430px;height:430px;bottom:-210px;left:-215px;box-shadow:0 0 0 55px #f2c98c09,0 0 0 110px #f2c98c05}.loveLetterSection:after{width:280px;height:280px;top:-120px;right:-130px;box-shadow:0 0 0 42px #c965720a}.loveLetterGlow{color:#ffffff06;-webkit-user-select:none;user-select:none;font:400 clamp(240px,36vw,560px)/.7 Noto Serif SC,serif;position:absolute;top:50%;right:4vw;transform:translateY(-50%)}.loveLetter{z-index:1;grid-template-columns:220px minmax(0,670px);justify-content:center;align-items:stretch;gap:76px;padding:105px 0;display:grid;position:relative}.loveLetterDate{background:linear-gradient(#c965724d,#ffffff09);border:1px solid #ffffff2b;border-radius:120px 120px 18px 18px;flex-direction:column;justify-content:center;align-items:center;min-height:390px;display:flex;position:relative;box-shadow:inset 0 0 0 8px #ffffff06}.loveLetterDate:before{display:none}.loveLetterSecret{color:#f2c98c;border:1px solid #f2c98c73;border-radius:50%;place-items:center;width:43px;height:43px;padding:0;font:400 18px/1 Georgia,serif;display:grid;position:absolute;top:28px}.loveLetterSecret:hover{color:#fff;background:#f2c98c1f;border-color:#f2c98c;transform:scale(1.08)}.loveLetterDate span{color:#ffffff7a;letter-spacing:.13em;margin-top:48px;font:700 8px/1 ui-monospace,monospace}.loveLetterDate strong{color:#f2c98c;letter-spacing:-.06em;margin:23px 0 6px;font:400 58px/.9 Georgia,serif}.loveLetterDate i{color:#ffffffbd;letter-spacing:.16em;font:500 16px/1 ui-monospace,monospace}.loveLetterBody{align-self:center}.loveLetterBody h2{letter-spacing:-.045em;margin:13px 0 30px;font:500 clamp(40px,5vw,67px)/1.08 Georgia,Noto Serif SC,serif}.loveLetterBody blockquote{color:#ffffffc2;max-width:650px;margin:0;font:400 clamp(19px,2.2vw,26px)/1.75 Georgia,Noto Serif SC,serif}.lovePromises{border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:42px;display:grid}.lovePromises p{border-right:1px solid #ffffff1f;flex-direction:column;justify-content:center;gap:9px;min-height:95px;margin:0;padding:15px 18px;display:flex}.lovePromises p:last-child{border-right:0}.lovePromises b{color:#efb5bd;font:700 9px/1 ui-monospace,monospace}.lovePromises span{color:#ffffff9e;font-size:11px;line-height:1.55}.loveLetterSign{align-items:center;gap:10px;margin-top:30px;font:500 16px/1 Georgia,Noto Serif SC,serif;display:flex}.loveLetterSign i{color:#ef9cab;font-style:normal}.loveLetterSign small{color:#ffffff6e;border-left:1px solid #ffffff2e;margin-left:9px;padding-left:18px;font:400 11px/1.5 sans-serif}.daysSection{background:linear-gradient(#f3e7e2,#f8efea);border-top:1px solid #91475214;border-bottom:1px solid #91475214;padding:100px 0 110px}.filters{flex-wrap:wrap;gap:8px;margin-bottom:30px;display:flex}.filters button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #17212638;border-radius:100px;padding:9px 18px;font-size:13px;transition:all .2s}.filters button:hover,.filters button.active{color:#fff;border-color:var(--blue);background:var(--blue)}.dayList{border-top:1px solid #17212638}.dayCard{border-bottom:1px solid #17212638;transition:background .2s}.dayCard.expanded{background:#ffffff94;box-shadow:inset 4px 0 #c965728c}.dayCard.isToday{box-shadow:inset 4px 0 0 var(--gold);background:#d7b17b1c}.dayCard.isToday .dayNumber b{color:var(--red-dark)}.daySummary{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:72px 105px 1fr 58px 145px 28px;align-items:center;gap:18px;padding:22px 18px 22px 8px;display:grid}.dayNumber small,.dayNumber b{font-family:ui-monospace,SFMono-Regular,monospace;display:block}.dayNumber small{color:var(--muted);letter-spacing:.15em;font-size:9px}.dayNumber b{font-size:25px}.dayDate strong,.dayDate span{display:block}.dayDate strong{font:700 15px/1.3 ui-monospace,monospace}.dayDate span{color:var(--muted);margin-top:4px;font-size:11px}.dayTitle h3{margin:0 0 5px;font:500 20px/1.25 Georgia,Noto Serif SC,serif}.dayTitle p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.pace{border-radius:3px;justify-self:start;padding:5px 8px;font-size:10px}.pace-轻松{color:#466445;background:#d9e5d6}.pace-适中{color:#805e25;background:#f3ddb8}.pace-全天{color:#923a31;background:#ead0cb}.dayCost{text-align:right}.dayCost small,.dayCost strong{display:block}.dayCost small{color:var(--muted);letter-spacing:.08em;font-size:9px}.dayCost strong{margin-top:5px;font:700 14px/1 ui-monospace,monospace}.toggle{border:1px solid #1721264d;border-radius:50%;justify-self:end;place-items:center;width:26px;height:26px;font-size:17px;display:grid}.dayDetail{grid-template-columns:1.4fr .6fr;gap:70px;padding:4px 70px 34px 203px;animation:.24s ease-out reveal;display:grid}@keyframes reveal{0%{opacity:0;transform:translateY(-5px)}}.detailLabel{color:var(--red);letter-spacing:.15em;font:700 10px/1 ui-monospace,monospace}.dayDetail ol{margin:15px 0 0;padding-left:20px}.dayDetail li{padding:5px 0 5px 7px;font-size:14px;line-height:1.5}.daySide{border-left:1px solid #1721262b;padding-left:24px}.daySide div span,.daySide div strong{display:block}.daySide div span{color:var(--muted);font-size:10px}.daySide div strong{margin-top:5px;font-size:13px}.dayStayLink{width:fit-content;margin-top:5px;font-size:13px;font-weight:700;line-height:1.45;display:block}.daySide p{color:var(--muted);margin:18px 0 0;font-size:12px;line-height:1.6}.daySide p b{color:var(--red-dark);margin-bottom:4px;display:block}.daySide .dayLoveNote{color:#6f4a51;background:#c9657213;border:1px dashed #c9657252;border-radius:10px;padding:13px 14px}.daySide .dayLoveNote b{color:var(--red-dark);letter-spacing:.04em;font-size:10px}.dayNavigation{margin-top:17px}.daySide .dayNavigation>span{color:var(--muted);font-size:10px}.dayNavigation>div{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.dayNavigation a{color:var(--blue);background:#ffffff85;border:1px solid #263f4629;border-radius:100px;padding:7px 9px;font-size:9px;line-height:1.2}.dayNavigation a:hover{color:#fff;border-color:var(--blue);background:var(--blue)}.dayNavigation i{color:var(--red);margin-left:4px;font-style:normal}.izuSecretTrigger{color:#80525b;cursor:pointer;background:#c965720e;border:1px dashed #c9657247;border-radius:10px;width:100%;margin-top:15px;padding:10px 12px;font:500 10px/1.4 Georgia,Noto Serif SC,serif}.izuSecretTrigger:hover{background:#c965721c}.budgetSection{padding:110px 0 120px}.budgetCard{color:#fff;background:linear-gradient(135deg, var(--blue), #4b414a);border-radius:24px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden;box-shadow:0 24px 70px #4a2d3624}.budgetMain{padding:58px 64px}.kicker.light{color:#efb6ad}.budgetMain h2{letter-spacing:-.04em;margin:14px 0 18px;font:500 clamp(36px,5vw,66px)/1.05 Georgia,serif}.budgetMain h2 em{letter-spacing:0;color:#ffffff8c;font:400 15px/1 sans-serif}.budgetMain p{color:#ffffffa3;max-width:490px;margin:0;font-size:13px;line-height:1.8}.budgetBreakdown{background:#ffffff0e;padding:42px 56px}.budgetBreakdown div{border-bottom:1px solid #ffffff24;justify-content:space-between;gap:24px;padding:20px 0;display:flex}.budgetBreakdown div:last-child{border:0}.budgetBreakdown span{color:#ffffff94;font-size:13px}.budgetBreakdown strong{text-align:right;font:600 13px/1.4 ui-monospace,monospace}.tipsGrid{background:0 0;border:0;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px;display:grid}.tipsGrid article{background:#ffffff8c;border:1px solid #9147521f;border-radius:18px;min-height:210px;padding:32px;box-shadow:0 14px 35px #4a2d360d}.tipsGrid article>span{color:var(--red);font:700 11px/1 ui-monospace,monospace}.tipsGrid h3{margin:30px 0 10px;font:500 20px/1.2 Georgia,Noto Serif SC,serif}.tipsGrid p{color:var(--muted);margin:0;font-size:13px;line-height:1.75}footer{color:#fff;background:linear-gradient(110deg,#1b3035,#3e3037)}.footerInner{justify-content:space-between;align-items:center;min-height:150px;display:flex}.footerInner>div{position:relative}.footerInner strong{font:500 18px/1.2 Georgia,serif}.footerInner p{color:#ffffff7a;margin:7px 0 0;font-size:12px}.footerInner small{color:#f2c98c73;letter-spacing:.13em;margin-top:9px;font:700 8px/1 ui-monospace,monospace;display:block}.footerInner a{color:#f2c98c;font-size:12px}.footerSecretTrigger{color:#f2c98c4d;padding:3px;font:400 16px/1 Georgia,serif;position:absolute;bottom:-3px;right:-31px}.secretNoteGlobal{z-index:80;border-radius:22px;width:min(440px,100% - 28px);animation:.32s ease-out secretGlobalReveal;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.secretNoteGlobal:before{background:#493941;top:auto;bottom:-7px;left:50%}.secretNoteGlobal>span{padding-right:28px}.secretNoteGlobal.isComplete{border-color:#f2c98c8c;width:min(560px,100% - 28px);box-shadow:0 30px 100px #121b1e80,0 0 0 6px #f2c98c0e}.secretProgress{gap:7px;margin-top:16px;display:flex}.secretProgress i{color:#ffffff3d;border:1px solid #ffffff21;border-radius:50%;place-items:center;width:20px;height:20px;font:9px/1 Georgia,serif;display:grid}.secretProgress i.found{color:#ef9cab;background:#ef9cab17;border-color:#ef9cab61}.completeLetter{border-top:1px solid #f2c98c2e;margin-top:18px;padding-top:17px}.completeLetter small{color:#f2c98c;letter-spacing:.13em;font:700 8px/1.3 ui-monospace,monospace}.secretNote .completeLetter p{color:#ffffffb8;font:400 13px/1.8 Georgia,Noto Serif SC,serif}.completeLetter b{color:#f2c98c;margin-top:12px;font:500 13px/1.5 Georgia,Noto Serif SC,serif;display:block}@keyframes secretGlobalReveal{0%{opacity:0;transform:translate(-50%,12px)scale(.97)}}.gatePage{color:#fffaf1;background:radial-gradient(circle at 78% 20%,#c9657266,#0000 28%),radial-gradient(circle at 18% 78%,#d7b17b26,#0000 25%),linear-gradient(135deg,#1b343a,#3c3c46 58%,#5a3642);place-items:center;min-height:100svh;padding:36px 20px;display:grid}.gateCard{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#1f2027a1;border:1px solid #ffffff2e;border-radius:28px;width:min(520px,100%);padding:48px 52px 42px;position:relative;overflow:hidden;box-shadow:0 30px 90px #00000047}.gateCard:after{content:"日本";writing-mode:vertical-rl;color:#ffffff09;letter-spacing:.14em;pointer-events:none;font:400 82px/1 serif;position:absolute;top:24px;right:-5px}.gateSeal{z-index:1;color:#fff;background:linear-gradient(145deg,#d67885,#ae5360);border-radius:50%;place-items:center;width:46px;height:46px;margin-bottom:34px;font-family:serif;font-size:23px;display:grid;position:relative;box-shadow:0 0 0 8px #ffffff0f}.gateEyebrow{z-index:1;color:#efb6ad;letter-spacing:.16em;font:700 10px/1.4 ui-monospace,monospace;position:relative}.gateCard h1{z-index:1;letter-spacing:-.045em;margin:15px 0 14px;font:500 clamp(38px,7vw,58px)/1.02 Georgia,Noto Serif SC,serif;position:relative}.gateCard h1 em{color:#f2c98c;font-style:normal}.gateIntro{z-index:1;color:#fff9;margin:0 0 30px;font-size:13px;line-height:1.7;position:relative}.gateForm{z-index:1;gap:15px;display:grid;position:relative}.gateForm label span{color:#ffffffad;margin-bottom:7px;font-size:11px;display:block}.gateForm input{color:#fff;background:#ffffff12;border:1px solid #fff3;border-radius:12px;outline:0;width:100%;height:48px;padding:0 15px;font:500 15px/1 sans-serif}.gateForm input::placeholder{color:#ffffff42}.gateForm input:focus{border-color:#f2c98c;box-shadow:0 0 0 2px #f2c98c24}.gateForm button{color:#fff;cursor:pointer;background:linear-gradient(90deg,#c96572,#b65462);border:0;border-radius:12px;justify-content:space-between;align-items:center;height:50px;margin-top:5px;padding:0 20px;font-weight:700;display:flex;box-shadow:0 10px 25px #a9425138}.gateForm button:hover{background:#c33f33}.gateForm button:focus-visible{outline-offset:3px;outline:2px solid #fff}.gateError{color:#ffd2ca;background:#d94b3d2e;margin:0;padding:10px 12px;font-size:12px}.gateNote{z-index:1;color:#ffffff61;text-align:center;margin:20px 0 0;font-size:10px;position:relative}.musicWidget{z-index:30;position:fixed;bottom:22px;right:22px}.musicLauncher{color:#fffaf1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;text-align:left;background:linear-gradient(110deg,#263f46f5,#5b3440f5);border:1px solid #ffffff47;border-radius:18px;grid-template-columns:42px 1fr 28px;align-items:center;gap:11px;width:244px;height:64px;padding:9px 13px 9px 10px;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 16px 44px #311d2447}.musicLauncher:hover{transform:translateY(-2px);box-shadow:0 20px 50px #311d2457}.musicLauncher:focus-visible,.musicPanel button:focus-visible,.musicPlaylist a:focus-visible{outline-offset:3px;outline:2px solid #f2cfad}.musicDisc{color:#fff;background:linear-gradient(145deg,#d47784,#aa4d5b);border-radius:50%;place-items:center;width:42px;height:42px;font:500 19px/1 Georgia,serif;display:grid;box-shadow:inset 0 0 0 6px #ffffff14}.musicLauncher.playing .musicDisc{animation:7s linear infinite musicSpin}.musicCopy strong,.musicCopy small{display:block}.musicCopy strong{margin-bottom:4px;font:500 14px/1.2 Georgia,Noto Serif SC,serif}.musicCopy small{color:#ffffff87;letter-spacing:.02em;font-size:9px}.musicBars{justify-content:center;align-items:end;gap:3px;height:20px;display:flex}.musicBars i{background:#efb5bd;border-radius:3px;width:3px;height:5px}.musicLauncher.playing .musicBars i:first-child{animation:.85s ease-in-out infinite alternate musicBar}.musicLauncher.playing .musicBars i:nth-child(2){animation:.62s ease-in-out .16s infinite alternate musicBar}.musicLauncher.playing .musicBars i:nth-child(3){animation:.74s ease-in-out .3s infinite alternate musicBar}.musicPanel{color:#fffaf1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(155deg,#243a3ffa,#402c35fa);border:1px solid #ffffff40;border-radius:23px;width:370px;max-height:min(720px,100vh - 110px);margin-bottom:12px;overflow-y:auto;box-shadow:0 28px 80px #1c12166b}.musicPanelHeader{justify-content:space-between;align-items:center;gap:16px;min-height:88px;padding:18px 20px 15px;display:flex}.musicPanelHeader span{color:#efb5bd;letter-spacing:.13em;font:700 8px/1.4 ui-monospace,monospace}.musicPanelHeader h2{margin:6px 0 0;font:500 21px/1.15 Georgia,Noto Serif SC,serif}.musicPanelHeader button{color:#ffffffb3;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:50%;flex:0 0 32px;width:32px;height:32px;padding:0;font-size:21px}.musicVideo{background:#171416;border-radius:14px;min-height:208px;margin:0 12px;position:relative;overflow:hidden}.musicVideo>div:last-child,.musicVideo iframe{border:0;width:100%!important;height:208px!important}.musicMiniBar{display:none}.musicPanel.minimized{border-radius:18px;width:260px;overflow:hidden}.musicPanel.minimized .musicPanelHeader,.musicPanel.minimized .musicNowPlaying,.musicPanel.minimized .musicControls,.musicPanel.minimized .musicPlaylist,.musicPanel.minimized .musicCredit{display:none}.musicPanel.minimized .musicVideo{border-radius:0;min-height:200px;margin:0}.musicPanel.minimized .musicVideo>div:last-child,.musicPanel.minimized .musicVideo iframe{height:200px!important}.musicPanel.minimized .musicMiniBar{justify-content:space-between;align-items:center;gap:10px;height:45px;padding:6px 10px 6px 13px;display:flex}.musicMiniBar strong,.musicMiniBar small{display:block}.musicMiniBar strong{font:500 11px/1.2 Georgia,Noto Serif SC,serif}.musicMiniBar small{color:#ffffff70;margin-top:3px;font-size:8px}.musicMiniBar button{color:#f2c98c;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:100px;padding:6px 9px;font-size:9px}.musicLoading,.musicFallback{z-index:1;color:#ffffff9e;text-align:center;background:radial-gradient(circle at 50% 35%,#513b43,#1a1819 70%);place-content:center;gap:6px;font-size:12px;display:grid;position:absolute;inset:0}.musicFallback strong,.musicFallback span{display:block}.musicFallback strong{color:#fffaf1;font:500 17px/1.4 Georgia,Noto Serif SC,serif}.musicFallback span{color:#ffffff80;font-size:10px}.musicNowPlaying{justify-content:space-between;align-items:center;gap:12px;min-height:61px;padding:14px 20px 7px;display:flex}.musicNowPlaying span{color:#efb5bd;letter-spacing:.12em;font:700 8px/1 ui-monospace,monospace}.musicNowPlaying strong{text-align:right;text-overflow:ellipsis;white-space:nowrap;font:500 13px/1.4 Georgia,Noto Serif SC,serif;overflow:hidden}.musicControls{justify-content:center;align-items:center;gap:13px;padding:3px 0 13px;display:flex}.musicControls button{color:#fffaf1;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:50%;width:34px;height:34px}.musicControls button:disabled{cursor:wait;opacity:.35}.musicControls .musicPlay{color:#4c3039;background:#f2c98c;border:0;width:42px;height:42px;font-size:13px}.musicPlaylist{border-top:1px solid #ffffff1a;margin:0 16px;padding:0;list-style:none}.musicPlaylist li{border-bottom:1px solid #ffffff12}.musicPlaylist a{color:#ffffffa8;justify-content:space-between;align-items:center;gap:12px;padding:9px 5px;font-size:11px;text-decoration:none;display:flex}.musicPlaylist a:hover,.musicPlaylist .current a{color:#fffaf1}.musicPlaylist .current a:before{content:"♥";color:#ef9baa;margin-right:-4px;font-size:8px}.musicPlaylist span{align-items:center;gap:7px;display:flex}.musicPlaylist small{color:#efb5bd;font-size:8px}.musicPlaylist em{color:#ffffff61;font-style:normal}.musicCredit{color:#ffffff52;text-align:center;margin:0;padding:13px 18px 16px;font-size:8px}@keyframes musicSpin{to{transform:rotate(360deg)}}@keyframes musicBar{to{height:18px}}@media (max-width:900px){.hero{min-height:650px}.sun{opacity:.72;width:280px;height:280px;top:170px;right:-120px}.heroBody{padding-top:75px}.hero h1{max-width:620px}.sectionHead{grid-template-columns:1fr;gap:22px}.routeRail{grid-template-columns:1fr;gap:0;padding-left:20px}.routeRail:before{width:1px;height:auto;inset:20px auto 20px 42px}.stay{text-align:left;grid-template-rows:auto auto auto;grid-template-columns:50px 100px 1fr;align-items:center;gap:3px 15px;min-height:132px;padding:8px 0;display:grid}.routeDot{grid-row:1/4;margin:0}.stayDate{grid-column:2}.stay h3{grid-area:1/3;margin:0}.stay>strong{grid-area:2/2}.stayHotel{grid-area:2/3;min-height:0;margin:3px 0 5px}.stayHotel span{vertical-align:1px;margin:0 7px 0 0;display:inline-block}.stay>p:last-child{grid-area:3/3;max-width:none;margin:0}.daySummary{grid-template-columns:55px 85px 1fr 110px 24px;gap:12px}.pace{display:none}.dayTitle p{max-width:300px}.dayDetail{gap:28px;padding-left:170px}.mapCard{grid-template-columns:250px minmax(0,1fr)}.mapRouteList{padding:30px 24px}.budgetCard{grid-template-columns:1fr}.travelModeCard{grid-template-columns:52px minmax(0,1fr)}.travelModeCard>a{grid-column:2;width:fit-content}.travelDebugBar{flex-wrap:wrap}.travelDebugBar>div:first-child{flex:1 0 100%}}@media (max-width:640px){.shell{width:min(100% - 28px,1180px)}.nav{height:72px}.navLinks{gap:14px;font-size:12px}.navLinks a:first-child{display:none}.hero{min-height:680px}.heroBody{padding-top:66px}.hero h1{font-size:54px}.secretNote{bottom:65px;left:14px}.heroCopy{font-size:15px}.travelModeSection{margin-top:-60px}.travelModeCard{border-radius:20px;grid-template-columns:44px minmax(0,1fr);gap:15px;min-height:0;padding:21px 18px}.travelModeSeal{width:44px;height:44px}.travelModeSeal span{font-size:17px}.travelModeCopy strong{font-size:20px}.travelModeCopy p{font-size:10px}.travelModeCard>a{grid-column:1/3;width:100%;min-width:0}.travelDebugBar{gap:10px;padding:12px}.travelDebugModes{width:100%;padding-bottom:2px;overflow-x:auto}.travelDebugModes button{flex:none}.travelDebugBar label{flex-direction:column;align-items:flex-start;width:100%}.travelDebugBar select{width:100%;max-width:none}.heroMeta{grid-template-columns:1fr 1fr;width:100%;display:grid}.heroMeta div{min-width:0;padding:14px}.heroMeta div:last-child{border-top:1px solid #ffffff29;grid-column:1/3;min-width:0}.routeSection,.mapSection,.budgetSection,.daysSection{padding:72px 0}.sectionHead{margin-bottom:42px}.sectionHead.compact{margin-bottom:24px}.daySummary{grid-template-columns:42px minmax(0,1fr) auto 22px;grid-template-areas:"number date cost toggle""number title title toggle";gap:5px 10px;padding:17px 4px}.dayNumber{grid-area:number}.dayDate{grid-area:date;display:block}.dayDate strong{font-size:13px}.dayDate span{margin-top:2px;font-size:9px}.dayTitle{grid-area:title;padding-top:3px}.dayCost{grid-area:cost}.toggle{grid-area:toggle}.dayTitle h3{font-size:17px}.dayTitle p{max-width:min(65vw,260px)}.dayCost{min-width:92px}.dayCost strong{font-size:12px}.toggle{width:22px;height:22px}.dayDetail{grid-template-columns:1fr;gap:20px;padding:0 12px 28px 55px}.daySide{border-top:1px solid #1721262b;border-left:0;padding:16px 0 0}.mapCard{grid-template-columns:1fr}.mapRouteList{max-height:260px;padding:26px 22px}.mapRouteList h3{margin-bottom:18px;font-size:22px}.mapTravelers{flex-wrap:wrap;width:100%;max-width:100%;margin:-5px 0 14px}.mapTravelerActions{width:100%}.mapRouteList ol{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.mapRouteList li{flex:none;grid-template-columns:24px auto;min-height:30px}.mapRouteList li:not(:last-child):after{display:none}.mapRouteList li b{width:24px;height:24px}.mapCanvasWrap,.mapCanvas{min-height:470px}.loveLetterSection{min-height:0}.loveLetter{grid-template-columns:1fr;gap:40px;padding:76px 0}.loveLetterDate{border-radius:80px;flex-direction:row;gap:14px;min-height:122px}.loveLetterDate:before{position:static}.loveLetterSecret{flex:0 0 43px;position:static}.loveLetterDate span{margin:0}.loveLetterDate strong{margin:0;font-size:43px}.lovePromises{grid-template-columns:1fr}.lovePromises p{border-bottom:1px solid #ffffff1a;border-right:0;min-height:72px}.lovePromises p:last-child{border-bottom:0}.loveLetterSign{flex-wrap:wrap;align-items:flex-start}.loveLetterSign small{border:0;flex-basis:100%;margin:7px 0 0;padding:0}.budgetMain,.budgetBreakdown{padding:38px 26px}.tipsGrid{grid-template-columns:1fr}.tipsGrid article{min-height:170px}.footerInner{min-height:140px}.footerSecretTrigger{right:-25px}.secretNoteGlobal{max-height:calc(100svh - 28px);bottom:14px;overflow-y:auto}.gateCard{padding:38px 25px 32px}.musicWidget{bottom:12px;right:12px}.musicLauncher{border-radius:50%;width:54px;height:54px;padding:6px;display:block}.musicDisc{width:40px;height:40px}.musicCopy,.musicBars{display:none}.musicPanel{width:calc(100vw - 24px);max-height:calc(100vh - 90px);margin:0;position:fixed;bottom:76px;right:12px}.musicPanel.minimized{width:220px}.musicVideo{min-height:200px}.musicVideo>div:last-child,.musicVideo iframe{height:200px!important}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
