/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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{--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}::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-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--paper:#f6f1e8;--paper-deep:#e8ded0;--card:#fffefb;--ink:#123b45;--ink-soft:#587079;--coral:#f27659;--coral-deep:#c94f38;--sky:#2f8795;--mustard:#e2ad43;--mint:#26866f;--line:#ddd5c8;--shadow:0 20px 54px #163b441f;--font-sans:Inter, "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", Meiryo, sans-serif;--font-serif:Georgia, "Times New Roman", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{color:var(--ink);background:radial-gradient(circle at 8% 4%, #ffffffd1, transparent 25rem), radial-gradient(circle at 92% 18%, #2f879524, transparent 30rem), radial-gradient(circle at 45% 52%, #f2765912, transparent 34rem), repeating-linear-gradient(0deg, transparent 0, transparent 4px, #3e312004 5px), var(--paper);font-family:var(--font-sans);margin:0;font-size:16px;line-height:1.65}button,textarea,select,input{font:inherit}button{color:inherit}button:not(:disabled){cursor:pointer}button:disabled{cursor:wait;opacity:.64}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:3px;outline:3px solid #13718b}::selection{color:#fff;background:var(--coral)}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:200;color:#fff;background:var(--ink);padding:10px 16px;transition:transform .2s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh;overflow:clip}.site-header{z-index:80;color:#fff;border-bottom:3px solid var(--coral);background:linear-gradient(90deg,#ffffff0a 1px,#0000 1px) 0 0/18px 18px,linear-gradient(118deg,#0c303a 0%,#124956 58%,#176271 100%);position:sticky;top:0;box-shadow:0 8px 30px #15293833}.header-inner{grid-template-columns:auto minmax(360px,1fr) auto auto;align-items:center;gap:clamp(16px,2vw,30px);width:min(1480px,100% - 40px);min-height:78px;margin:0 auto;display:grid}.brand-lockup{text-align:left;color:#fff;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:inline-flex}.brand-mark{color:#0000;width:46px;height:46px;font-family:var(--font-serif);background:url(/app-icon.png) 50%/cover no-repeat;border:2px solid #ffffffb3;border-radius:13px;place-items:center;font-size:18px;font-weight:900;line-height:1;display:grid;overflow:hidden;transform:rotate(-3deg);box-shadow:0 7px 18px #0003}.brand-lockup>span:last-child{line-height:1.15;display:grid}.brand-lockup strong{font-family:var(--font-serif);letter-spacing:.12em;font-size:15px}.brand-lockup small{color:#b9c7ce;letter-spacing:.08em;margin-top:5px;font-size:10px}.category-nav{overscroll-behavior-inline:contain;scrollbar-width:none;justify-content:flex-start;min-width:0;display:flex;overflow-x:auto}.category-nav::-webkit-scrollbar{display:none}.category-nav button{color:#c9d3d8;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;min-height:36px;padding:4px 12px;font-size:12px;font-weight:700;transition:color .2s,background .2s,transform .2s}.category-nav button:hover{color:#fff;transform:translateY(-1px)}.category-nav button.active{color:var(--ink);background:#f9f3e8;border-color:#fff}.header-progress{align-items:center;gap:10px;min-width:120px;display:flex}.header-progress>div:last-child{line-height:1.2;display:grid}.header-progress strong{font-family:var(--font-serif);font-size:14px}.header-progress small{color:#aebdc5;margin-top:3px;font-size:10px}.mini-ring{--progress:0deg;background:conic-gradient(var(--coral) var(--progress), #ffffff2e 0);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid;position:relative}.mini-ring:after{content:"";background:var(--ink);border-radius:50%;width:29px;height:29px;position:absolute}.mini-ring span{z-index:1;font-size:11px;font-weight:900;position:relative}.header-tools{align-items:center;gap:9px;display:flex}.owner-auth-button{color:#fff;white-space:nowrap;background:#ffffff17;border:1px solid #ffffff3d;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:7px 12px;font-size:10px;font-weight:900;transition:background .18s,border-color .18s,transform .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff17}.owner-auth-button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff6b;transform:translateY(-1px)}.owner-auth-button.is-owner{color:#e9fff7;background:#26866f57;border-color:#87e1c173}.owner-auth-button:disabled{cursor:wait;opacity:.62}.connection-banner{z-index:79;color:#fff;background:#315f68;border-bottom:1px solid #ffffff3d;justify-content:space-between;align-items:center;gap:18px;min-height:46px;padding:7px max(20px,50vw - 720px);display:flex;position:sticky;top:78px;box-shadow:0 8px 22px #142c3224}.connection-banner>div{align-items:center;gap:10px;min-width:0;display:flex}.connection-banner>div>span:last-child{min-width:0;line-height:1.25;display:grid}.connection-banner strong{font-size:12px}.connection-banner small{color:#ffffffc7;margin-top:2px;font-size:10px}.connection-dot{background:#f4bd42;border:2px solid #ffffffb3;border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 0 3px #f4bd422b}.connection-banner.is-offline{background:#73584c}.connection-banner.has-failed{background:#7a443c}.connection-banner.is-offline .connection-dot{background:var(--coral);box-shadow:0 0 0 3px #ee70522e}.connection-banner.has-failed .connection-dot{background:#ffd16a;box-shadow:0 0 0 3px #ffd16a33}.connection-banner.is-syncing .connection-dot{background:#74d3c5;animation:1.1s ease-in-out infinite connection-pulse;box-shadow:0 0 0 3px #74d3c533}.connection-banner button{color:#fff;background:#ffffff1f;border:1px solid #ffffff73;border-radius:999px;flex:none;min-height:31px;padding:4px 13px;font-size:11px;font-weight:900}.connection-banner button:hover{background:#fff3}.hero{width:min(1260px,100% - 48px);margin:0 auto;padding:clamp(58px,7vw,96px) 0 0;position:relative}.hero:before{z-index:-1;content:"";background:radial-gradient(circle,#0000 31%,#1932470d 32%,#0000 33%),repeating-radial-gradient(circle,#0000 0 28px,#1932470d 29px 30px);border-radius:50%;width:480px;height:480px;position:absolute;top:32px;right:-7vw}.hero-grid{grid-template-columns:minmax(0,1.22fr) minmax(390px,.78fr);align-items:center;gap:clamp(52px,8vw,124px);display:grid}.section-label{color:var(--coral-deep);letter-spacing:.23em;align-items:center;gap:12px;font-size:11px;font-weight:900;display:flex}.hero-copy h1{font-family:var(--font-serif);letter-spacing:-.055em;flex-direction:column;align-items:center;gap:.04em;margin:20px 0 22px;font-size:clamp(48px,6.6vw,92px);font-weight:800;line-height:1.06;display:inline-flex}.hero-title-main{color:var(--ink);font-feature-settings:"palt";letter-spacing:-.06em;white-space:nowrap;text-shadow:0 1px #ffffffd1,0 10px 24px #0c39441a;background:linear-gradient(177deg,#0000 0 78%,#2f87951a 79% 91%,#0000 92%);padding:0 .06em .02em;font-size:.84em;display:block}.hero-copy h1 em{width:fit-content;color:var(--coral-deep);letter-spacing:-.035em;white-space:nowrap;text-shadow:0 8px 22px #f276591f;padding:0 .25em .06em;font-style:normal;display:block;position:relative}.hero-title-number{font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.06em;margin-left:.03em;font-size:1.08em;display:inline-block}.hero-copy h1 em:before{color:var(--gold);font-family:var(--font-sans);content:"✦";text-shadow:0 2px 8px #e2ad4342;font-size:.2em;line-height:1;position:absolute;top:-.16em;right:.04em}.hero-copy h1 em:after{content:"";background:linear-gradient(174deg,#0000 0 28%,#dc6c4b57 30% 59%,#0000 62%);height:10px;position:absolute;bottom:-8px;left:.14em;right:.12em}.hero-lead{max-width:620px;color:var(--ink-soft);margin:0;font-size:clamp(15px,1.45vw,18px);line-height:2}.hero-actions{align-items:center;gap:22px;margin-top:34px;display:flex}.primary-button,.secondary-button{border-radius:3px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:11px 22px;font-size:14px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg, var(--coral), #ec5f45);border:1px solid #e96147;border-radius:14px;box-shadow:0 12px 24px #c94f383d}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 28px #c94f384d}.primary-button:disabled{color:#d5d9dc;box-shadow:none;background:#73828b;border-color:#73828b}.secondary-button{color:var(--ink);background:0 0;border:1px solid #b8aa97}.secondary-button:hover:not(:disabled){background:#eee5d7}.owner-login-cta{color:#fff;background:var(--ink);border-color:var(--ink);border-radius:14px;box-shadow:0 12px 24px #123b452e}.owner-login-cta:hover:not(:disabled){color:#fff;background:#1a505b}.progress-postcard{--progress-bg-1:#1c2942;--progress-bg-2:#2b3d5f;--progress-bg-3:#465a78;--progress-ink:#fffaf0;--progress-gold:#f6c464;--progress-coral:#ff8b73;isolation:isolate;min-height:0;color:var(--progress-ink);background:radial-gradient(circle at 84% 12%, #f6c46440, transparent 26%), radial-gradient(circle at 15% 88%, #f276592e, transparent 34%), linear-gradient(145deg, var(--progress-bg-1) 0%, var(--progress-bg-2) 58%, var(--progress-bg-3) 100%);border:1px solid #ffffff29;border-top:3px solid var(--coral);border-radius:28px;padding:31px 34px 28px;position:relative;overflow:hidden;transform:rotate(.55deg);box-shadow:0 24px 55px #1c29423d,0 4px 10px #1c294229,inset 0 1px #ffffff1f}.progress-postcard:before,.progress-postcard:after{z-index:0;pointer-events:none;content:"";position:absolute}.progress-postcard:before{background:repeating-radial-gradient(circle,#0000 0 33px,#ffffff0d 34px 35px);border-radius:50%;width:380px;height:380px;top:-165px;right:-112px}.progress-postcard:after{border-top:1px dashed #ffffff29;border-radius:50%;width:270px;height:92px;bottom:94px;left:-42px;transform:rotate(-8deg)}.progress-card-head,.progress-center,.postcard-stats{z-index:1;position:relative}.progress-card-head{display:block}.progress-card-head h2{color:var(--progress-ink);font-family:var(--font-serif);letter-spacing:.04em;margin:0;font-size:23px;line-height:1.2}.progress-center{padding:22px 3px 24px;display:block}.progress-note{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#ffffff1c,#ffffff0d);border:1px solid #ffffff21;border-radius:20px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"kicker rate""label rate""track track""remaining remaining";align-items:end;gap:3px 20px;min-width:0;padding:19px 21px 17px;line-height:1.3;display:grid;box-shadow:inset 0 1px #ffffff14,0 12px 28px #021c2221}.progress-note-kicker{color:#fffaf0c7;letter-spacing:.05em;grid-area:kicker;font-size:10px;font-weight:800}.progress-note strong{color:var(--progress-gold);font-family:var(--font-serif);font-variant-numeric:tabular-nums;grid-area:rate;align-self:center;margin:0;font-size:56px;line-height:1}.progress-note-label{color:#fffaf0cc;grid-area:label;font-size:11px;font-weight:700}.progress-rate-track{background:#ffffff1f;border-radius:999px;grid-area:track;width:100%;height:7px;margin-top:13px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #00000024}.progress-rate-track i{background:linear-gradient(90deg, var(--progress-coral), var(--progress-gold));border-radius:inherit;height:100%;display:block}.progress-note small{color:#fffaf0b3;grid-area:remaining;margin-top:7px;font-size:11px;font-weight:700}.postcard-stats{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff1f;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:6px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff0f}.postcard-stats>div{border-right:1px solid #ffffff1f;grid-template-rows:auto auto;align-content:center;place-items:center;min-width:0;min-height:58px;display:grid}.postcard-stats>div:last-child{border:0}.postcard-stats dt{color:#fffaf09e;letter-spacing:.08em;grid-row:2;font-size:9px;font-weight:800}.postcard-stats dd{color:var(--progress-ink);font-family:var(--font-serif);font-variant-numeric:tabular-nums;grid-row:1;margin:0;font-size:27px;font-weight:900;line-height:1.05}.postcard-stats>div:nth-child(2) dd{color:var(--progress-coral)}.postcard-stats>div:nth-child(3) dd{color:var(--progress-gold)}.category-legend{background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin-top:clamp(58px,7vw,92px);display:grid}.legend-item{--tone:var(--coral);text-align:left;background:#fffdf7e0;border:0;align-items:center;gap:10px;min-width:0;min-height:82px;padding:12px 14px;transition:background .2s,transform .2s;display:flex}.legend-item:hover{background:#fff;transform:translateY(-3px)}.legend-icon{color:#fff;width:34px;height:34px;font-family:var(--font-serif);background:var(--tone);border-radius:50%;flex:none;place-items:center;font-size:16px;font-weight:900;display:grid}.legend-item>span:last-child{min-width:0;line-height:1.25;display:grid}.legend-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.legend-item small{color:var(--ink-soft);margin-top:4px;font-size:9px}.tone-overseas,.tone-coral{--tone:#ef6f51;--tone-soft:#fce8e1}.tone-domestic,.tone-sky{--tone:#2f8795;--tone-soft:#dff0f2}.tone-activity,.tone-amber{--tone:#d9a12d;--tone-soft:#faf0d4}.tone-exercise,.tone-mint{--tone:#3c936f;--tone-soft:#e0f0e8}.tone-work,.tone-indigo{--tone:#526ea0;--tone-soft:#e4e9f3}.tone-health,.tone-rose{--tone:#b56786;--tone-soft:#f3e2e9}.tone-lifestyle,.tone-clay{--tone:#8b6a57;--tone-soft:#eee4dd}.tone-violet,.add-chapter-card{--tone:#7663a8;--tone-soft:#ece7f7}.add-chapter-card{background:var(--tone-soft)}@supports (color:color-mix(in lab, red, red)){.add-chapter-card{background:color-mix(in srgb, var(--tone-soft) 66%, #fff)}}.add-chapter-card .legend-icon{border:1px dashed #ffffffb8}.list-area{width:min(1320px,100% - 48px);margin:0 auto;padding:clamp(68px,8vw,110px) 0 150px}.list-area:focus-visible{outline:3px solid var(--sky);outline-offset:8px}.list-heading{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:end;margin-bottom:34px;padding-bottom:20px;display:flex}.list-heading h2{font-family:var(--font-serif);margin:6px 0 0;font-size:clamp(32px,4vw,52px);line-height:1.1}.status-filter{background:#fffefbc7;border:1px solid #123b451a;border-radius:16px;grid-template-columns:repeat(3,auto);gap:5px;margin:0 0 38px;padding:5px;display:inline-grid;box-shadow:0 8px 24px #123b4512}.status-filter button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:8px 15px;font-size:12px;font-weight:800;transition:color .2s,background .2s,box-shadow .2s;display:inline-flex}.status-filter button strong{min-width:25px;height:25px;color:var(--ink);background:#eee9df;border-radius:999px;place-items:center;padding:0 6px;font-size:11px;display:grid}.status-filter button.active{color:#fff;background:var(--ink);box-shadow:0 6px 14px #123b452e}.status-filter button.active strong{color:var(--ink);background:var(--mustard)}.category-sections{gap:80px;min-width:0;display:grid}.empty-filter{text-align:center;background:#fffefbb8;border:1px dashed #123b4538;border-radius:22px;justify-items:center;max-width:560px;margin:0 auto;padding:42px 24px;display:grid}.empty-filter>span{color:#fff;background:var(--sky);border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:12px;font-size:20px;display:grid}.empty-filter strong{font-family:var(--font-serif);font-size:20px}.empty-filter p{color:var(--ink-soft);margin:6px 0 0;font-size:13px}.category-section{--tone:var(--coral);--tone-soft:#f8e4dc;width:100%;min-width:0;max-width:100%;scroll-margin-top:100px}.category-heading{grid-template-columns:auto auto 1fr auto;align-items:center;gap:17px;margin-bottom:24px;display:grid}.chapter-number{color:#19324726;font-family:var(--font-serif);font-size:60px;font-weight:900;line-height:1}.category-big-icon{color:#fff;width:48px;height:48px;font-family:var(--font-serif);background:var(--tone);border-radius:50%;place-items:center;font-size:22px;font-weight:900;display:grid;box-shadow:4px 4px #1932471f}.category-heading>div:nth-child(3){line-height:1.2;display:grid}.category-heading>div:nth-child(3)>span{color:var(--tone);letter-spacing:.22em;font-size:9px;font-weight:900}.category-heading h3{font-family:var(--font-serif);margin:4px 0 0;font-size:28px}.category-count{color:var(--ink-soft);align-items:baseline;font-size:11px;display:flex}.category-count strong{color:var(--tone);font-family:var(--font-serif);margin-right:4px;font-size:25px}.travel-map{isolation:isolate;color:#fff;background:radial-gradient(circle at 92% 4%,#f276594d,#0000 19rem),radial-gradient(circle at 4% 100%,#e2ad432e,#0000 22rem),linear-gradient(135deg,#0c303a 0%,#124b58 55%,#176473 100%);border:1px solid #ffffff26;border-radius:30px;width:100%;min-width:0;max-width:100%;margin:0 0 34px;padding:clamp(20px,2.5vw,30px);position:relative;overflow:hidden;box-shadow:0 24px 55px #0c303a33,inset 0 1px #ffffff1f}.travel-map:before{z-index:-1;content:"";border:1px solid #ffffff14;border-radius:50%;width:410px;height:410px;position:absolute;top:-165px;right:-105px;box-shadow:0 0 0 52px #ffffff08,0 0 0 104px #ffffff05}.travel-map.is-collapsed{padding-block:17px}.travel-map.is-collapsed .travel-map-header{margin-bottom:0}.map-disclosure-header{align-items:center}.map-disclosure-toggle{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:18px;flex:auto;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:clamp(10px,1.5vw,20px);padding:5px;display:grid}.map-disclosure-toggle:hover .map-disclosure-action{color:var(--ink);background:var(--mustard);border-color:#ffffff70}.map-disclosure-toggle:focus-visible{outline-offset:4px;outline:3px solid #fff}.travel-map-heading{align-content:center;min-width:0;display:grid}.travel-map-heading>strong{overflow-wrap:anywhere;font-family:var(--font-serif);margin:5px 0 4px;font-size:clamp(25px,3vw,36px);line-height:1.2}.map-disclosure-action{min-height:42px;color:var(--ink);white-space:nowrap;background:#fff5d5;border:1px solid #f6c464;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:8px;padding:8px 13px;font-size:11px;font-weight:900;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.map-disclosure-content{min-width:0;animation:.24s ease-out map-disclosure-in}.travel-map-header{z-index:2;justify-content:space-between;align-items:end;gap:28px;min-width:0;margin-bottom:21px;display:flex;position:relative}.travel-map-kicker{color:#f6c464;letter-spacing:.24em;align-items:center;gap:9px;font-size:9px;font-weight:900;display:inline-flex}.travel-map-kicker:before{content:"";background:var(--coral);width:28px;height:2px}.travel-map-header h4,.travel-map-heading>strong{font-family:var(--font-serif);margin:5px 0 4px;font-size:clamp(25px,3vw,36px);line-height:1.2}.travel-map-header>div{min-width:0}.travel-map-header-tools{flex:none;align-items:end;gap:10px;display:flex}.travel-add-button,.travel-edit-button{min-height:44px;color:var(--ink);background:var(--mustard);border:1px solid #ffffff52;border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:10px 15px;font-size:11px;font-weight:900;display:inline-flex;box-shadow:0 9px 22px #031f2633,inset 0 1px #ffffff6b}.travel-add-button:hover,.travel-edit-button:hover{color:#fff;background:var(--coral)}:is(.travel-add-button:focus-visible,.travel-edit-button:focus-visible){outline-offset:3px;outline:3px solid #fff}.travel-map-quick-stats{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(145deg,#ffffff2b,#ffffff12);border:1px solid #fff3;border-radius:15px;flex:0 0 88px;width:88px;padding:6px 10px;display:grid;overflow:hidden;box-shadow:0 10px 24px #031f262e,inset 0 1px #ffffff24}.travel-map-quick-stats span{justify-content:space-between;align-items:baseline;gap:5px;min-width:0;padding:3px 0;line-height:1;display:flex}.travel-map-quick-stats span+span{border-top:1px solid #ffffff21}.travel-map-quick-stats strong{color:#fff;font-family:var(--font-serif);font-variant-numeric:tabular-nums;font-size:18px;line-height:1}.travel-map-quick-stats span:last-child strong{color:#f6c464}.travel-map-quick-stats small{color:#ebf5f6b8;letter-spacing:.06em;white-space:nowrap;font-size:8px;font-weight:900;overflow:hidden}.travel-map-filters{z-index:2;scrollbar-width:none;background:#0000001f;border:1px solid #ffffff17;border-radius:16px;gap:7px;margin-bottom:15px;padding:4px;display:flex;position:relative;overflow-x:auto}.travel-map-filters::-webkit-scrollbar{display:none}.travel-map-filters button{color:#eef7f7b5;background:0 0;border:0;border-radius:12px;flex:1 0 auto;justify-content:center;align-items:center;gap:8px;min-width:max-content;min-height:44px;padding:7px 13px;font-size:11px;font-weight:800;transition:color .2s,background .2s,transform .2s;display:inline-flex}.travel-map-filters button strong{min-width:24px;height:24px;color:var(--ink);background:#ffffffbd;border-radius:999px;place-items:center;padding:0 5px;font-size:10px;display:grid}.travel-map-filters button.active{color:var(--ink);background:#fff;box-shadow:0 8px 18px #021b212e}.travel-map-filters button.active strong{background:var(--mustard)}.travel-map-filters button:active{transform:scale(.97)}.travel-map-layout{z-index:2;grid-template-columns:minmax(0,1fr) minmax(260px,310px);gap:15px;min-width:0;display:grid;position:relative}.travel-map-visual{background:#dff3f4;border:1px solid #ffffff52;border-radius:20px;min-width:0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #123b4514,0 12px 28px #021b212b}.travel-map-visual svg{width:100%;height:auto;min-height:250px;display:block}.travel-map-sphere{fill:url(#travel-sea);stroke:#123b454d;stroke-width:1px;vector-effect:non-scaling-stroke}.travel-map-graticule{fill:none;stroke:#123b4526;stroke-width:.6px;vector-effect:non-scaling-stroke}.travel-map-country{fill:#fff9ed;stroke:#668f97;stroke-linejoin:round;stroke-width:1.05px;vector-effect:non-scaling-stroke;transition:fill .2s,opacity .2s}.travel-map-country.visited{fill:#e8876f;stroke:#9e4938;stroke-width:1.15px;cursor:pointer}.travel-map-country.visited.in-region{fill:#f27659}.travel-map-country.visited:hover,.travel-map-country.selected{fill:#efb642;stroke:#70470f;stroke-width:1.7px}.travel-map-country.is-addable{cursor:crosshair}.travel-map-country.is-addable:hover{fill:#f6d98e;stroke:#7d551d;stroke-width:1.6px}.travel-map-marker{cursor:pointer;filter:none}.travel-map-marker.selected{filter:url(#travel-pin-shadow)}.travel-map-marker-hit{fill:#0000;pointer-events:all}.travel-map-marker-ring{fill:#ffffffe6;stroke:#123b45;stroke-width:1.05px;vector-effect:non-scaling-stroke}.travel-map-marker-dot{fill:#e95f43;stroke:#fff;stroke-width:.9px;vector-effect:non-scaling-stroke}.travel-map-marker.city-pin .travel-map-marker-ring{fill:#f6c464}.travel-map-marker.city-pin .travel-map-marker-dot{fill:#123b45}.travel-map-marker.selected .travel-map-marker-ring{fill:#f6c464;stroke:#a85e22;stroke-width:1.5px}.travel-map-marker.selected .travel-map-marker-dot{fill:#f05f43}.travel-map-marker-label rect{fill:#123b45;stroke:#ffffffb8;stroke-width:1px}.travel-map-marker-label text{fill:#fff;font-family:var(--font-sans);letter-spacing:.03em;font-size:12px;font-weight:900}.travel-map-loading{z-index:4;color:var(--ink);text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#dff3f4c7;place-items:center;padding:24px;font-size:12px;font-weight:800;display:grid;position:absolute;inset:0}.travel-map-legend{z-index:3;color:var(--ink);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#fffc;border:1px solid #123b451a;border-radius:999px;gap:13px;padding:7px 10px;font-size:9px;font-weight:800;display:inline-flex;position:absolute;bottom:11px;right:12px;box-shadow:0 5px 14px #123b4514}.travel-map-legend span{align-items:center;gap:5px;display:inline-flex}.travel-map-legend i{border-radius:50%;width:10px;height:10px;display:inline-block}.travel-map-legend .visited-country{background:var(--coral);border-radius:3px}.travel-map-legend .city-marker{background:var(--ink);border:3px solid var(--mustard);box-shadow:0 0 0 1px var(--ink)}.travel-map-detail{min-width:0;color:var(--ink);background:linear-gradient(#ffffffe6,#ffffffe6),repeating-linear-gradient(0deg,#0000 0 23px,#123b450f 24px),#fffaf1;border:1px solid #ffffff61;border-radius:20px;padding:17px;box-shadow:0 12px 28px #021b212b}.travel-country-select{gap:5px;display:grid}.travel-country-select>span{color:var(--ink-soft);letter-spacing:.1em;font-size:9px;font-weight:900}.travel-country-select select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #123b452e;border-radius:12px;padding:8px 36px 8px 12px;font-size:12px;font-weight:800}.travel-detail-heading{border-bottom:1px dashed #123b4533;align-items:center;gap:11px;padding:16px 0 13px;display:flex}.travel-detail-flag{background:#f4eee3;border:1px solid #123b451a;border-radius:14px;flex:none;place-items:center;width:47px;height:47px;font-size:28px;display:grid}.travel-detail-heading>div{min-width:0;line-height:1.2;display:grid}.travel-detail-heading small{color:var(--coral-deep);letter-spacing:.18em;font-size:8px;font-weight:900}.travel-detail-heading strong{font-family:var(--font-serif);margin-top:3px;font-size:21px}.travel-detail-heading>div>span{color:var(--ink-soft);margin-top:3px;font-size:9px}.travel-city-list{scrollbar-width:none;gap:6px;padding:13px 0;display:flex;overflow-x:auto}.travel-city-list::-webkit-scrollbar{display:none}.travel-city-list button{min-width:max-content;min-height:40px;color:var(--ink-soft);background:#fff;border:1px solid #123b4521;border-radius:999px;flex:none;align-items:center;gap:5px;padding:7px 10px;font-size:10px;font-weight:800;display:inline-flex}.travel-city-list button>span{color:var(--coral);font-size:7px}.travel-city-list button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.travel-city-empty{min-height:40px;color:var(--ink-soft);align-items:center;font-size:10px;font-weight:800;display:inline-flex}.travel-memory{border-left:3px solid var(--coral);background:#f6f0e4;border-radius:3px 12px 12px 3px;padding:13px 13px 12px;position:relative}.travel-memory>span{color:var(--coral-deep);font-family:var(--font-serif);letter-spacing:.17em;font-size:8px;font-weight:900}.travel-memory p{font-family:var(--font-serif);margin:5px 0 0;font-size:11px;font-weight:700;line-height:1.65}.travel-edit-button{color:#fff;background:var(--ink);border-color:#123b453d;width:100%;margin-top:12px;box-shadow:0 8px 18px #123b4529}.travel-empty-detail{text-align:center;align-content:center;gap:8px;min-height:100%;padding:22px 10px;display:grid}.travel-empty-detail strong{font-family:var(--font-serif);font-size:17px}.travel-empty-detail p{color:var(--ink-soft);margin:0;font-size:11px;line-height:1.6}.domestic-map{background:radial-gradient(circle at 92% 5%,#f6c46438,#0000 20rem),radial-gradient(circle at 2% 100%,#ff8b7326,#0000 24rem),linear-gradient(135deg,#17263e 0%,#293d5d 56%,#425775 100%);box-shadow:0 24px 55px #1c294236,inset 0 1px #ffffff1f}.domestic-map .travel-map-filters{background:#050e203d}.domestic-map-visual{background:#dceef5}.domestic-map-visual svg{height:clamp(460px,52vw,650px)}.domestic-map-sea{fill:#dceef5}.domestic-map-prefecture{fill:#fffaf0;stroke:#698698;stroke-linejoin:round;stroke-width:1.05px;vector-effect:non-scaling-stroke;transition:fill .2s,opacity .2s,stroke .2s}.domestic-map-prefecture.visited{fill:#eb876f;stroke:#9e4938;stroke-width:1.2px;cursor:pointer}.domestic-map-prefecture.visited.in-region{fill:#f27659}.domestic-map-prefecture.is-muted{opacity:.28}.domestic-map-prefecture.visited:hover,.domestic-map-prefecture.selected{fill:#f6c464;stroke:#70470f;stroke-width:1.8px;opacity:1}.domestic-map-prefecture.is-addable{cursor:crosshair}.domestic-map-prefecture.is-addable:hover{fill:#f7dda0;stroke:#7d551d;stroke-width:1.65px;opacity:1}.domestic-detail-heading .travel-detail-flag{color:#fff;font-family:var(--font-serif);background:linear-gradient(135deg,#526ea0,#2f4667);font-size:18px;font-weight:900}.domestic-place-chip{min-width:max-content;min-height:40px;color:var(--ink-soft);background:#fff;border:1px solid #123b4521;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 11px;font-size:10px;font-weight:800;display:inline-flex}.domestic-place-chip>span{color:var(--coral);font-size:7px}.domestic-fixed-prefecture{min-height:48px;font-family:var(--font-serif);background:#f0e9dc;border:1px solid #d3c7b7;border-radius:10px;align-items:center;padding:10px 13px;display:flex}.map-attribution{z-index:3;color:#334c60;text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#fffc;border:1px solid #123b451a;border-radius:999px;align-items:center;max-width:calc(100% - 190px);padding:5px 8px;font-size:8px;font-weight:700;display:inline-flex;position:absolute;bottom:10px;left:11px;overflow:hidden}.map-attribution:hover{color:var(--coral-deep);background:#fff}.travel-modal-open{overflow:hidden}body.travel-modal-open .travel-map{z-index:160}.travel-editor-backdrop{z-index:170}.travel-editor-card{width:min(760px,100%);color:var(--ink)}.travel-city-editor{background:#ffffff94;border:1px solid #d3c7b7;border-radius:15px;gap:12px;padding:16px;display:grid}.travel-city-editor-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.travel-city-editor-heading>div{gap:3px;display:grid}.travel-city-editor-heading strong{font-family:var(--font-serif);font-size:16px}.travel-city-editor-heading small{color:var(--ink-soft);font-size:9px}.travel-add-city-button{min-height:42px;color:var(--ink);background:#fff;border:1px solid #bfb3a2;border-radius:11px;flex:none;justify-content:center;align-items:center;gap:5px;padding:8px 12px;font-size:10px;font-weight:900;display:inline-flex}.travel-add-city-button:hover{border-color:var(--coral)}.travel-city-editor-list{gap:10px;display:grid}.travel-city-editor-row{background:#f6f0e4;border:1px solid #123b451a;border-radius:12px;grid-template-columns:30px minmax(150px,1fr) 38px;align-items:end;gap:8px;padding:11px;display:grid}.travel-city-row-number{height:48px;color:var(--coral-deep);font-family:var(--font-serif);place-items:center;font-size:13px;font-weight:900;display:grid}.travel-city-editor-row .field{gap:4px}.travel-city-editor-row .field>span{font-size:9px}.travel-city-editor-row .field input{min-height:44px}.travel-remove-city-button{color:#8e3025;background:#fff2ef;border:1px solid #dfa79e;border-radius:10px;place-items:center;width:38px;height:44px;padding:0;font-size:20px;display:grid}.travel-remove-city-button:hover{color:#fff;background:#a83c2e;border-color:#a83c2e}.travel-city-editor-empty{color:var(--ink-soft);text-align:center;border:1px dashed #bfb3a2;border-radius:10px;margin:0;padding:12px;font-size:11px}.travel-form-error{color:#7d3026;background:#fff0ed;border:1px solid #e7b3aa;border-left:4px solid #c94936;border-radius:4px 12px 12px 4px;margin:0;padding:12px 14px;font-size:11px;font-weight:800}.travel-editor-actions{z-index:2;background:linear-gradient(#0000,#fffdf7 26%);padding-bottom:2px;position:sticky;bottom:calc(-1*clamp(30px,5vw,48px))}.wish-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.empty-chapter{text-align:center;background:radial-gradient(circle at 50% 0, var(--tone-soft), transparent 64%), #fffefbcc;border:1px dashed var(--tone);grid-column:1/-1;align-content:center;justify-items:center;min-height:220px;padding:32px 24px;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.empty-chapter{border:1px dashed color-mix(in srgb, var(--tone) 48%, transparent)}}.empty-chapter{border-radius:22px}.empty-chapter>span{color:#fff;width:50px;height:50px;font-family:var(--font-serif);background:var(--tone);box-shadow:0 9px 20px var(--tone);border-radius:50%;place-items:center;margin-bottom:12px;font-size:21px;font-weight:900;display:grid}@supports (color:color-mix(in lab, red, red)){.empty-chapter>span{box-shadow:0 9px 20px color-mix(in srgb, var(--tone) 24%, transparent)}}.empty-chapter>strong{font-family:var(--font-serif);font-size:19px}.empty-chapter>p{color:var(--ink-soft);margin:6px 0 18px;font-size:12px}.empty-chapter>.primary-button{min-height:44px;padding:9px 16px;font-size:12px}.wish-card{background:linear-gradient(#ffffffe6, #ffffffe6), repeating-linear-gradient(0deg, transparent 0 22px, #385c6e12 23px), var(--card);border:1px solid #123b451f;border-top:4px solid var(--tone);flex-direction:column;min-height:178px;padding:27px 22px 19px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.wish-card{border-top:4px solid color-mix(in srgb, var(--tone) 82%, #fff)}}.wish-card{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:18px;transition:transform .22s,box-shadow .22s,border-color .22s,background .22s;box-shadow:0 12px 28px #163b4414,0 2px 5px #163b440d}.wish-card:nth-child(4n+2){transform:rotate(.35deg)}.wish-card:nth-child(4n+3){transform:rotate(-.25deg)}.wish-card:hover{z-index:2;border-color:var(--tone);transform:translateY(-3px)rotate(0);box-shadow:0 17px 34px #163b4421}@media (hover:hover) and (pointer:fine){.wish-card.is-drag-enabled{cursor:grab}.wish-card.is-drag-enabled:active,.wish-card.is-dragging{cursor:grabbing}.wish-card.is-dragging{z-index:7;border-color:var(--tone);opacity:.38;box-shadow:0 8px 18px #163b441a;transform:scale(.97)rotate(0)!important}.wish-card.is-drag-over{z-index:6;border-color:var(--tone);box-shadow:0 0 0 3px var(--tone), 0 20px 38px #163b4426}@supports (color:color-mix(in lab, red, red)){.wish-card.is-drag-over{box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 18%, transparent), 0 20px 38px #163b4426}}.wish-card.is-drag-over{transform:translateY(-2px)rotate(0)!important}.wish-card.is-drag-over:after{z-index:8;pointer-events:none;content:"";background:var(--tone);height:4px;box-shadow:0 0 0 3px var(--tone);border-radius:999px;position:absolute;left:7px;right:7px}@supports (color:color-mix(in lab, red, red)){.wish-card.is-drag-over:after{box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 18%, transparent)}}.wish-card.is-drag-over-before:after{top:-10px}.wish-card.is-drag-over-after:after{bottom:-10px}.drag-handle{cursor:grab}.drag-handle:active{cursor:grabbing}}.wish-card.is-readonly{cursor:default;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.wish-card.is-reordering{z-index:6;border-color:var(--tone);min-height:226px;box-shadow:0 0 0 3px var(--tone), 0 20px 42px #0a313b2b;padding-bottom:91px}@supports (color:color-mix(in lab, red, red)){.wish-card.is-reordering{box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 18%, transparent), 0 20px 42px #0a313b2b}}.wish-card.is-reordering{transform:translateY(-2px)rotate(0)!important}.wish-card.is-reordering:after{pointer-events:none;content:"";border:1px dashed var(--tone);position:absolute;inset:6px}@supports (color:color-mix(in lab, red, red)){.wish-card.is-reordering:after{border:1px dashed color-mix(in srgb, var(--tone) 42%, #fff)}}.wish-card.is-reordering:after{border-radius:13px}.reorder-panel{z-index:4;border:1px solid var(--tone);background:#fffffff0;grid-template-columns:minmax(42px,1fr) auto;align-items:center;gap:8px;min-height:62px;padding:7px;display:grid;position:absolute;bottom:11px;left:11px;right:11px}@supports (color:color-mix(in lab, red, red)){.reorder-panel{border:1px solid color-mix(in srgb, var(--tone) 30%, #d7dedc)}}.reorder-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:17px;box-shadow:0 10px 24px #09303a21,inset 0 1px #fff}.reorder-panel-label{color:var(--ink-soft);letter-spacing:.04em;white-space:nowrap;justify-items:center;gap:1px;font-size:9px;font-weight:900;display:grid}.reorder-grip{color:var(--tone);font-size:21px;line-height:.75}.reorder-actions{gap:5px;display:flex}.reorder-actions button{color:#fff;background:var(--tone);align-content:center;place-items:center;min-width:47px;min-height:48px;padding:3px 6px;display:grid}@supports (color:color-mix(in lab, red, red)){.reorder-actions button{background:color-mix(in srgb, var(--tone) 88%, #153e48)}}.reorder-actions button{border:1px solid var(--tone)}@supports (color:color-mix(in lab, red, red)){.reorder-actions button{border:1px solid color-mix(in srgb, var(--tone) 80%, #123d47)}}.reorder-actions button{box-shadow:0 5px 11px var(--tone);border-radius:13px}@supports (color:color-mix(in lab, red, red)){.reorder-actions button{box-shadow:0 5px 11px color-mix(in srgb, var(--tone) 19%, transparent)}}.reorder-actions button{transition:transform .14s,opacity .14s,box-shadow .14s}.reorder-actions button>span{font-size:18px;font-weight:900;line-height:1}.reorder-actions button small{margin-top:1px;font-size:8px;font-weight:800;line-height:1}.reorder-actions button:active:not(:disabled){box-shadow:none;transform:translateY(1px)scale(.96)}.reorder-actions button:disabled{cursor:not-allowed;opacity:.32}.reorder-actions .reorder-done{color:var(--ink);box-shadow:none;background:#f5f1e9;border-color:#d8d1c5;font-size:9px;font-weight:900}.wish-card.is-reorder-saving .reorder-grip{animation:.8s ease-in-out infinite alternate reorder-saving-pulse}@keyframes reorder-saving-pulse{to{opacity:.35;transform:translateY(-2px)}}.wish-card.is-completed{background:linear-gradient(#e7f5efeb, #e7f5efeb), repeating-linear-gradient(-12deg, transparent 0 10px, #dc6c4b0a 11px), var(--tone-soft);border-color:var(--tone)}@supports (color:color-mix(in lab, red, red)){.wish-card.is-completed{border-color:color-mix(in srgb, var(--tone) 55%, #fff)}}.wish-card.is-completed p{color:#557169;text-decoration-color:#26866f75;text-decoration-thickness:1px}.paper-tape{background:#ddc5917a;border:1px solid #a7894f1a;width:64px;height:16px;position:absolute;top:-7px;left:50%;transform:translate(-50%)rotate(-1deg)}.wish-number{color:var(--tone);font-family:var(--font-serif);letter-spacing:.08em;margin-bottom:14px;font-size:12px;font-weight:900}.reorder-trigger{width:40px;min-height:40px;color:var(--tone);place-items:center;padding:0;display:grid;position:absolute;top:17px;right:61px}@supports (color:color-mix(in lab, red, red)){.reorder-trigger{color:color-mix(in srgb, var(--tone) 68%, var(--ink-soft))}}.reorder-trigger{opacity:.62;background:0 0;border:1px solid #0000;border-radius:12px}.reorder-trigger span{font-size:18px;line-height:1}:is(.reorder-trigger:hover,.reorder-trigger:focus-visible){color:var(--tone);border-color:var(--tone);background:#ffffffb8}@supports (color:color-mix(in lab, red, red)){:is(.reorder-trigger:hover,.reorder-trigger:focus-visible){border-color:color-mix(in srgb, var(--tone) 28%, #d5cec2)}}:is(.reorder-trigger:hover,.reorder-trigger:focus-visible){opacity:1}.edit-wish{min-height:40px;color:var(--ink-soft);background:0 0;border:1px solid #0000;padding:4px 8px;font-size:10px;font-weight:700;position:absolute;top:17px;right:17px}.edit-wish:hover{color:var(--ink);background:#ffffffa6;border-color:#cfc4b4}.wish-card>p{font-family:var(--font-serif);overflow-wrap:anywhere;margin:0 0 18px;padding-right:14px;font-size:15px;font-weight:700;line-height:1.72}.wish-meta{align-items:center;gap:8px;min-height:28px;margin-top:auto;padding-right:42px;display:flex}.wish-card.is-readonly .wish-meta{padding-right:0}.done-label{color:var(--coral-deep);letter-spacing:.05em;align-items:center;gap:4px;font-size:10px;font-weight:900;display:inline-flex}.done-label>span{color:#fff;background:var(--coral);border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.date-stamp{isolation:isolate;color:#a44131;min-width:96px;min-height:48px;font-family:var(--font-serif);font-variant-numeric:tabular-nums;letter-spacing:.035em;white-space:nowrap;background:radial-gradient(circle at 18% 28%,#c94f3817 0 1px,#0000 1.5px) 0 0/9px 9px,#fffbf6e6;border:2px solid #b74c31ad;border-radius:999px;justify-content:center;align-items:center;padding:7px 14px;font-size:13px;font-weight:900;line-height:1;transition:color .16s,background-color .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex;position:relative;overflow:hidden;transform:rotate(-1.4deg);box-shadow:inset 0 0 0 2px #ffffffb8,0 2px 5px #933d2b14}.date-stamp:after{pointer-events:none;content:"";border-radius:inherit;border:1px solid #b74c3157;position:absolute;inset:4px}@media (hover:hover) and (pointer:fine){.date-stamp:hover{color:#8f3427;border-color:var(--coral-deep);background-color:#fff;transform:translateY(-2px)rotate(-.4deg);box-shadow:inset 0 0 0 2px #ffffffd1,0 5px 12px #933d2b24}}.date-stamp:active{transform:translateY(1px)rotate(-.4deg);box-shadow:inset 0 0 0 2px #ffffffb8}.date-stamp:focus-visible{outline-offset:3px;outline:3px solid #13718b}.date-stamp.is-readonly,.date-stamp.is-readonly:hover,.date-stamp.is-readonly:active{cursor:default;transform:rotate(-1.4deg);box-shadow:inset 0 0 0 2px #ffffffb8,0 2px 5px #933d2b14}.someday-label{color:#748487;font-family:var(--font-sans);letter-spacing:.06em;font-size:10px;font-weight:900}.check-button{color:#fff;background:0 0;border:2px solid #b9afa1;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;transition:background .18s,border-color .18s,transform .18s;display:grid;position:absolute;bottom:15px;right:15px}.check-button:hover{border-color:var(--tone);transform:scale(1.08)}.is-completed .check-button{background:var(--mint);border-color:var(--mint);box-shadow:0 0 0 5px #26866f1f}.check-button span{font-size:18px;font-weight:900;line-height:1}.celebration-stamp{z-index:5;width:88px;height:88px;color:var(--coral-deep);font-family:var(--font-serif);text-align:center;letter-spacing:.12em;border:4px double var(--coral);opacity:0;background:#fffdf7c7;border-radius:50%;place-items:center;font-size:12px;font-weight:900;line-height:1.05;animation:.78s ease-out forwards stamp-in;display:grid;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)rotate(-16deg)scale(1.7)}.floating-add{z-index:70;color:#fff;background:linear-gradient(135deg, var(--coral), #e95b43);border:2px solid #f29b82;border-radius:999px;align-items:center;gap:11px;min-height:56px;padding:8px 20px 8px 8px;font-size:13px;font-weight:900;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 12px 32px #6f352447,0 0 0 5px #ffffff61}.floating-add:hover{transform:translateY(-3px);box-shadow:0 16px 38px #6f352457,0 0 0 6px #ffffff73}.floating-add>span:first-child{width:38px;height:38px;color:var(--coral);background:#fff;border-radius:50%;place-items:center;font-size:24px;display:grid}.mobile-tabbar{display:none}.modal-open{overflow:hidden}.modal-backdrop{z-index:150;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f212fad;place-items:center;padding:24px;animation:.18s ease-out fade-in;display:grid;position:fixed;inset:0}.modal-card{background:linear-gradient(#fffdf7f0, #fffdf7f0), repeating-linear-gradient(0deg, transparent 0 24px, #36566712 25px), var(--card);border:1px solid #cbbba4;width:min(590px,100%);max-height:calc(100dvh - 48px);padding:clamp(30px,5vw,48px);animation:.25s ease-out modal-in;position:relative;overflow-y:auto;box-shadow:18px 22px #07172233}.modal-tape{background:#d9bc7d9e;width:110px;height:25px;position:absolute;top:-8px;left:50%;transform:translate(-50%)rotate(-1deg)}.modal-close{width:42px;height:42px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;font-size:26px;display:grid;position:absolute;top:16px;right:16px}.modal-close:hover{color:var(--ink);background:#eee6da}.modal-eyebrow{color:var(--coral-deep);font-family:var(--font-serif);letter-spacing:.22em;font-size:10px;font-weight:900}.modal-card h2{font-family:var(--font-serif);margin:8px 50px 5px 0;font-size:clamp(27px,4vw,38px);line-height:1.25}.modal-intro{color:var(--ink-soft);margin:0 0 27px;font-size:13px}.modal-card form{gap:19px;display:grid}.chapter-modal-card{width:min(620px,100%)}.chapter-form{gap:22px}.chapter-choice-group{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.chapter-choice-group>legend{margin-bottom:10px;padding:0;font-size:12px;font-weight:900}.chapter-icon-options,.chapter-tone-options{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:8px;display:grid}.chapter-icon-options label,.chapter-tone-options label{cursor:pointer;place-items:center;min-width:0;display:grid;position:relative}.chapter-icon-options input,.chapter-tone-options input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.chapter-icon-options label>span,.chapter-tone-options label>span{width:100%;min-height:48px;color:var(--ink-soft);font-family:var(--font-serif);background:#ffffffc2;border:1px solid #cfc3b3;border-radius:13px;place-items:center;font-size:20px;font-weight:900;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.chapter-tone-options label>span:before{content:"";background:var(--chapter-color);border:3px solid #ffffffe0;border-radius:50%;width:27px;height:27px;box-shadow:0 0 0 1px #123b451f}.chapter-icon-options label:hover>span,.chapter-tone-options label:hover>span{border-color:var(--sky);transform:translateY(-2px)}.chapter-icon-options input:checked+span,.chapter-tone-options input:checked+span{color:#fff;background:var(--ink);border-color:var(--ink);box-shadow:0 0 0 3px #2f879529,0 8px 18px #123b4524}:is(.chapter-icon-options input:focus-visible+span,.chapter-tone-options input:focus-visible+span){outline-offset:3px;outline:3px solid #13718b}.completion-target{border:1px solid #d3c7b7;border-left:3px solid var(--coral);background:#f0e9dc;border-radius:4px 14px 14px 4px;gap:5px;padding:14px 16px;display:grid}.completion-target small{color:var(--coral-deep);letter-spacing:.12em;font-size:9px;font-weight:900}.completion-target strong{font-family:var(--font-serif);font-size:17px;line-height:1.55}.delete-confirmation{gap:24px;display:grid}.delete-target{color:#6d2a22;background:#fff0ed;border:1px solid #e7b3aa;border-left:4px solid #c94936;border-radius:4px 16px 16px 4px;gap:7px;padding:18px;display:grid}.delete-target small{letter-spacing:.12em;font-size:9px;font-weight:900}.delete-target strong{font-family:var(--font-serif);line-height:1.6}.danger-button{color:#fff;background:#a83c2e;border:1px solid #8f2f23;border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:11px 22px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 10px 22px #842a1f38}.danger-button:hover:not(:disabled){background:#8f2f23}.danger-button:disabled{cursor:wait;opacity:.62}.field{gap:7px;display:grid}.field>span{font-size:12px;font-weight:900}.field textarea,.field select,.field input{width:100%;color:var(--ink);background:#fffc;border:1px solid #bfb3a2;border-radius:2px}.field textarea{resize:vertical;min-height:108px;padding:13px 14px;line-height:1.6}.field select,.field input{min-height:48px;padding:9px 12px}.field textarea:focus,.field select:focus,.field input:focus{border-color:var(--sky);box-shadow:0 0 0 3px #5c9db524}.field>small{color:var(--ink-soft);font-size:10px}.completion-switch{background:#f0e9dc;border:1px solid #d3c7b7;align-items:center;gap:12px;min-height:70px;padding:11px 14px;display:flex}.completion-switch input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.switch-track{background:#b5ada1;border-radius:999px;flex:none;width:48px;height:28px;transition:background .2s;position:relative}.switch-track span{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:4px;left:4px;box-shadow:0 2px 4px #0003}.completion-switch input:checked+.switch-track{background:var(--coral)}.completion-switch input:checked+.switch-track span{transform:translate(20px)}.completion-switch input:focus-visible+.switch-track{outline-offset:3px;outline:3px solid #13718b}.completion-switch>span:last-child{line-height:1.3;display:grid}.completion-switch strong{font-size:13px}.completion-switch small{color:var(--ink-soft);margin-top:3px;font-size:10px}.date-field{border-left:3px solid var(--coral);padding-left:18px}.modal-actions{justify-content:flex-end;gap:12px;padding-top:7px;display:flex}.danger-zone{border-top:1px solid #ddc9c3;justify-content:space-between;align-items:center;gap:18px;margin-top:5px;padding-top:18px;display:flex}.danger-zone>div{gap:3px;display:grid}.danger-zone strong{color:#7d3026;font-size:12px}.danger-zone small{color:var(--ink-soft);font-size:10px}.danger-link{color:#8e3025;background:#fff2ef;border:1px solid #dfa79e;border-radius:12px;min-width:88px;min-height:44px;padding:8px 16px;font-size:12px;font-weight:900}.danger-link:hover:not(:disabled){color:#fff;background:#a83c2e;border-color:#a83c2e}.login-card{width:min(520px,100%)}.login-error{color:#842d23;background:#fff0ed;border:1px solid #e2ada4;border-radius:10px;margin:0;padding:11px 13px;font-size:12px;font-weight:700}.toast{z-index:190;color:#fff;background:var(--ink);opacity:0;overflow-wrap:anywhere;pointer-events:none;border:1px solid #516775;align-items:center;gap:9px;width:min(100% - 24px,520px);max-width:none;min-height:48px;margin-inline:auto;padding:10px 18px;font-size:13px;font-weight:700;transition:opacity .25s,transform .25s;display:flex;position:fixed;bottom:26px;left:0;right:0;transform:translateY(24px);box-shadow:0 12px 35px #0000003d}.toast.show{opacity:1;transform:translateY(0)}.toast span{color:#fff;background:var(--coral);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.loading-shell,.error-shell{place-items:center;min-height:100vh;padding:30px;display:grid}.loading-shell{color:var(--ink);align-content:center}.loading-brand{font-family:var(--font-serif);letter-spacing:.28em;margin-bottom:18px;font-size:13px;font-weight:900}.loading-paper{background:var(--card);border:1px solid var(--line);width:min(340px,80vw);box-shadow:var(--shadow);gap:13px;padding:30px;display:grid;transform:rotate(-1deg)}.loading-paper span{background:linear-gradient(90deg,#e7ded0 25%,#f6efe4 50%,#e7ded0 75%) 0 0/200% 100%;height:12px;animation:1.4s linear infinite shimmer}.loading-paper span:nth-child(2){width:74%}.loading-paper span:nth-child(3){width:88%}.loading-shell p{color:var(--ink-soft);font-size:12px}.error-postcard{text-align:center;background:var(--card);border:1px solid var(--line);max-width:520px;box-shadow:var(--shadow);padding:42px}.error-postcard>span{color:#fff;width:54px;height:54px;font-family:var(--font-serif);background:var(--coral);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:26px;font-weight:900;display:grid}.error-postcard h1{font-family:var(--font-serif);margin:0;font-size:30px}.error-postcard p{color:var(--ink-soft);margin:10px 0 24px;font-size:13px}@keyframes stamp-in{0%{opacity:0;transform:translate(-50%,-50%)rotate(-16deg)scale(1.7)}55%{opacity:1;transform:translate(-50%,-50%)rotate(-16deg)scale(.92)}75%{opacity:1;transform:translate(-50%,-50%)rotate(-16deg)scale(1)}to{opacity:0;transform:translate(-50%,-50%)rotate(-16deg)scale(1)}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)rotate(.6deg)}}@keyframes map-disclosure-in{0%{opacity:0;transform:translateY(-8px)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes connection-pulse{50%{opacity:.45;transform:scale(.82)}}@media (max-width:1180px){.header-inner{grid-template-columns:auto 1fr auto}.category-nav{display:none}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);gap:50px}.category-legend{grid-template-columns:repeat(4,1fr)}.wish-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:880px){.header-progress{display:none}.header-inner{grid-template-columns:1fr auto;min-height:70px}.hero{width:min(100% - 34px,720px);padding-top:50px}.hero-grid{grid-template-columns:1fr;gap:50px}.hero-copy{text-align:center}.hero-lead{margin:0 auto}.hero-actions{justify-content:center}.progress-postcard{width:min(500px,100% - 20px);margin:0 auto}.category-legend{grid-template-columns:repeat(2,1fr)}.list-area{width:min(100% - 34px,760px)}.wish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:590px){html{scroll-padding-top:80px}.header-inner{width:calc(100% - 26px)}.header-tools{gap:5px}.owner-auth-button{width:auto;min-width:64px;min-height:40px;padding:5px 10px;line-height:1}.brand-mark{width:40px;height:40px;font-size:15px}.brand-lockup strong{font-size:12px}.brand-lockup small{display:none}.hero:before{width:320px;height:320px}.hero-copy h1{margin-top:16px;font-size:clamp(43px,15vw,64px)}.hero-lead{font-size:14px;line-height:1.9}.hero-lead br{display:none}.hero-actions{flex-direction:column;gap:13px;margin-top:27px}.category-legend{margin-top:56px}.legend-item{min-height:70px;padding:9px 10px}.list-area{width:calc(100% - 28px);padding-top:68px;padding-bottom:140px}.list-heading{align-items:start}.list-heading h2{font-size:31px}.category-heading{grid-template-columns:auto auto 1fr;gap:10px}.chapter-number{font-size:43px}.category-big-icon{width:42px;height:42px}.category-count{grid-column:2/-1;justify-self:start;margin-top:-4px}.wish-grid{grid-template-columns:1fr;gap:14px}.wish-card{min-height:156px;transform:none!important}.floating-add{right:15px;bottom:calc(15px + env(safe-area-inset-bottom));justify-content:center;min-height:58px;padding-right:16px;left:15px}.modal-backdrop{align-items:end;padding:8px}.modal-card{border-radius:18px 18px 5px 5px;width:100%;max-height:calc(100dvh - 16px);padding:34px 22px 24px;box-shadow:0 -15px 40px #07172240}.modal-actions{grid-template-columns:1fr 1.35fr;display:grid}.modal-actions button{padding-inline:12px}.danger-zone{align-items:stretch}.toast{bottom:87px}body{overscroll-behavior-y:none;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 100% 0,#2f879526,#0000 17rem),linear-gradient(#f8f4ed 0%,#f3f1ec 100%)}button{touch-action:manipulation}.app-shell{min-height:100dvh}.site-header{background:linear-gradient(118deg,#0b3039 0%,#12505d 100%);border-bottom-width:2px;box-shadow:0 8px 24px #082a322b}.connection-banner{min-height:50px;padding:7px 14px;top:64px}.connection-banner strong,.connection-banner small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.connection-banner button{min-height:34px;padding-inline:12px}.header-inner{min-height:64px}.brand-mark{border-radius:12px;width:42px;height:42px}.hero{width:calc(100% - 28px);padding-top:24px}.hero-grid{gap:20px}.hero-copy h1{width:100%;margin:12px 0 10px;font-size:clamp(38px,12vw,48px);line-height:.98}.hero-title-main{letter-spacing:-.065em}.hero-copy h1 em{padding-inline:.32em}.hero-copy h1 em:after{height:7px;bottom:-3px}.hero-lead{max-width:360px;font-size:13px;line-height:1.7}.hero-actions{display:none}.progress-postcard{border-color:#ffffff26;border-top-color:var(--coral);border-radius:24px;width:100%;min-height:auto;margin-top:0;padding:17px 16px 15px;transform:none;box-shadow:0 18px 38px #1c294238,0 3px 7px #1c294224,inset 0 1px #ffffff1a}.progress-postcard:before{width:250px;height:250px;top:-112px;right:-92px}.progress-postcard:after{width:190px;height:70px;bottom:82px;left:-54px}.progress-card-head h2{font-size:19px}.progress-center{padding:13px 0 14px}.progress-note{border-radius:16px;gap:2px 12px;padding:14px 15px 13px}.progress-note-kicker{letter-spacing:.02em;font-size:10px}.progress-note strong{font-size:42px}.progress-note-label{font-size:10px}.progress-rate-track{width:100%;max-width:none;margin-top:8px}.progress-note small{margin-top:5px;font-size:10px}.postcard-stats{border-radius:15px;padding:4px}.postcard-stats>div{min-height:51px}.postcard-stats dt{letter-spacing:.03em;font-size:9px}.postcard-stats dd{font-size:22px}.category-legend{scroll-snap-type:x proximity;scrollbar-width:none;background:0 0;border:0;gap:8px;margin-top:18px;padding:3px 1px 10px;scroll-padding-inline:1px;display:flex;overflow-x:auto}.category-legend::-webkit-scrollbar{display:none}.category-legend .legend-item{scroll-snap-align:start;background:#fffefbd1;border:1px solid #123b451c;border-radius:999px;flex:none;gap:8px;min-width:max-content;min-height:48px;padding:7px 12px 7px 8px;box-shadow:0 5px 14px #123b450f}.category-legend .legend-item:active{background:var(--tone-soft);transform:scale(.97)}.legend-icon{width:32px;height:32px}.legend-item strong{max-width:92px;font-size:11px}.legend-item small{display:none}.list-area{width:calc(100% - 24px);padding-top:31px;padding-bottom:calc(112px + env(safe-area-inset-bottom));scroll-margin-top:70px}.list-heading{border-bottom:0;margin-bottom:12px;padding-bottom:12px;display:block}.section-label{font-size:9px}.list-heading h2{letter-spacing:-.04em;white-space:nowrap;margin-top:3px;font-size:clamp(19px,6.25vw,24px);line-height:1.15}.status-filter{z-index:35;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffefbe0;border-radius:15px;grid-template-columns:repeat(3,1fr);gap:4px;width:100%;margin-bottom:29px;padding:4px;display:grid;position:sticky;top:72px;box-shadow:0 8px 25px #123b451c}.status-filter button{gap:5px;min-width:0;min-height:44px;padding:6px 5px;font-size:11px}.status-filter button strong{min-width:23px;height:23px;padding-inline:5px;font-size:10px}.category-sections{gap:42px}.category-section{scroll-margin-top:140px}.category-heading{grid-template-columns:auto 1fr auto;gap:10px;margin-bottom:13px;padding:0 3px}.chapter-number{display:none}.category-big-icon{width:40px;height:40px;box-shadow:0 7px 15px var(--tone);font-size:18px}@supports (color:color-mix(in lab, red, red)){.category-big-icon{box-shadow:0 7px 15px color-mix(in srgb, var(--tone) 24%, transparent)}}.category-heading h3{font-size:21px}.category-count{white-space:nowrap;grid-column:auto;justify-self:end;margin-top:0}.category-count strong{font-size:22px}.travel-map{border-radius:22px;width:100%;max-width:100%;margin-bottom:20px;margin-left:0;margin-right:0;padding:15px;box-shadow:0 16px 35px #0c303a2e}.travel-map.is-collapsed{padding:12px}.travel-map:before{top:-230px;right:-190px}.travel-map-header{grid-template-columns:1fr;align-items:start;gap:8px;margin-bottom:15px;display:grid}.travel-map.is-collapsed .travel-map-header{grid-template-columns:1fr;margin-bottom:0}.map-disclosure-toggle{grid-column:1/-1;grid-template-columns:minmax(0,1fr) 68px 88px;gap:8px;width:100%;padding:0}.map-disclosure-header>.travel-add-button{grid-column:1/-1;justify-self:end}.map-disclosure-action{gap:5px;width:88px;min-height:42px;padding:7px 8px;font-size:10px;box-shadow:0 4px 10px #123b451f}.travel-map-header-tools{grid-template-columns:78px;justify-items:stretch;gap:7px;display:grid}.travel-add-button{min-height:40px;padding:7px 8px;font-size:9px}.travel-map-heading{align-self:center}.travel-map-header h4,.travel-map-heading>strong{letter-spacing:-.03em;margin-top:4px;font-size:clamp(19px,6.8vw,23px)}.travel-map-kicker{letter-spacing:.16em;white-space:nowrap;gap:6px;font-size:8px}.travel-map-kicker:before{width:18px}.travel-map-quick-stats{border-radius:14px;flex-basis:74px;width:74px;padding:5px 7px;display:grid}.travel-map-quick-stats strong{font-size:17px}.travel-map-filters{border-radius:14px;max-width:100%;margin-bottom:11px;margin-left:0;margin-right:0}.travel-map-filters button{flex:none;min-height:44px;padding-inline:12px}.travel-map-layout{grid-template-columns:1fr;gap:10px}.travel-map-visual{border-radius:16px}.travel-map-visual svg{min-height:0}.domestic-map-visual svg{height:auto;min-height:280px}.travel-map-marker-label{display:none}.travel-map-legend{gap:8px;padding:5px 7px;font-size:8px;bottom:7px;right:7px}.map-attribution{color:#334c60;border:0;border-top:1px solid #123b4517;border-radius:0;justify-content:center;max-width:100%;padding:7px 9px;font-size:8px;position:static}.travel-map-detail{border-radius:16px;padding:14px}.travel-country-select select{min-height:48px;font-size:13px}.travel-detail-heading{padding-block:13px 11px}.travel-detail-heading strong{font-size:20px}.travel-city-list{padding-block:11px}.travel-city-list button,.domestic-place-chip{min-height:44px;padding-inline:12px}.travel-memory p{font-size:11px}.travel-editor-backdrop{align-items:end;padding:12px 8px 0}.travel-editor-card{width:100%;max-height:calc(100dvh - 12px);padding:30px 18px calc(22px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;box-shadow:0 -14px 42px #07172247}.travel-editor-card h2{font-size:26px}.travel-city-editor{padding:12px}.travel-city-editor-heading{flex-direction:column;align-items:stretch}.travel-add-city-button{width:100%;min-height:44px}.travel-city-editor-row{grid-template-columns:28px minmax(0,1fr) 38px;align-items:end}.travel-city-editor-row .field:first-of-type{grid-column:2}.travel-city-row-number{grid-area:1/1}.travel-remove-city-button{grid-area:1/3}.travel-editor-actions{bottom:calc(8px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr;gap:8px;padding-top:22px;display:grid}.travel-editor-actions button{width:100%;min-width:0}.wish-grid{gap:10px}.empty-chapter{border-radius:18px;min-height:185px;padding:25px 18px}.empty-chapter>span{width:44px;height:44px;margin-bottom:10px;font-size:18px}.empty-chapter>strong{font-size:17px}.empty-chapter>p{margin-bottom:15px;font-size:11px}.wish-card{background:#fffefbf5;border:1px solid #123b451a;border-radius:18px;min-height:112px;padding:16px 58px 14px 17px;box-shadow:0 9px 22px #123b4512,0 2px 4px #123b450a;transform:none!important}.wish-card.is-readonly{padding-right:17px}.wish-card.is-reordering{min-height:194px;box-shadow:0 0 0 3px var(--tone), 0 16px 34px #0a313b26;padding:16px 17px 84px}@supports (color:color-mix(in lab, red, red)){.wish-card.is-reordering{box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 17%, transparent), 0 16px 34px #0a313b26}}.reorder-panel{border-radius:16px;min-height:60px;padding:6px;bottom:9px;left:9px;right:9px}.reorder-actions button{min-width:46px;min-height:48px}.wish-card:before{content:"";background:var(--tone);border-radius:0 5px 5px 0;width:4px;position:absolute;top:16px;bottom:16px;left:0}.wish-card:active{box-shadow:0 4px 12px #123b4512;transform:scale(.99)!important}.wish-card.is-completed{background:linear-gradient(135deg,#f4fbf7,#e6f4ee);border-color:#26866f3d}.paper-tape{display:none}.wish-number{margin-bottom:5px;font-size:10px}.edit-wish{border-radius:12px;min-width:44px;min-height:44px;padding:4px;top:4px;right:7px}.reorder-trigger{opacity:.7;width:44px;min-height:44px;top:4px;right:51px}.edit-wish:active{background:#123b4512}.wish-card>p{margin-bottom:8px;padding-right:7px;font-size:15px;line-height:1.52}.wish-meta{min-height:28px;padding-right:0}.date-stamp{min-width:100px;min-height:48px;padding:7px 13px;font-size:13px;transform:rotate(-.8deg)}.date-stamp.is-readonly,.date-stamp.is-readonly:hover,.date-stamp.is-readonly:active{transform:rotate(-.8deg)}.check-button{background:#ffffffe0;border-color:#123b4547;width:46px;height:46px;bottom:11px;right:10px;box-shadow:0 5px 12px #123b4514}.check-button:active{transform:scale(.9)}.floating-add{display:none}.mobile-tabbar{z-index:100;min-height:calc(72px + env(safe-area-inset-bottom));padding:7px 7px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px)saturate(1.3);backdrop-filter:blur(18px)saturate(1.3);background:#fffefbe6;border-top:1px solid #123b451c;grid-template-columns:repeat(5,1fr);align-items:end;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 35px #123b451c}.mobile-tabbar.is-readonly{grid-template-columns:repeat(4,1fr)}.mobile-tabbar>button{color:#77878d;background:0 0;border:0;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;min-height:55px;padding:4px 1px;font-size:9px;font-weight:800;display:flex;position:relative}.mobile-tabbar>button:active{background:#123b450f;transform:scale(.94)}.mobile-tabbar>button.active{color:var(--sky)}.mobile-tabbar>button.active:before{content:"";background:var(--coral);border-radius:999px;width:20px;height:3px;position:absolute;top:0}.mobile-tabbar svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:21px;height:21px}.mobile-tabbar .mobile-add-tab{color:var(--ink);gap:0;overflow:visible}.mobile-tabbar .mobile-add-tab>span{color:#fff;background:linear-gradient(135deg, var(--coral), #e65b42);border:4px solid #fffefb;border-radius:50%;place-items:center;width:56px;height:56px;margin-top:-24px;font-size:31px;font-weight:300;line-height:1;display:grid;box-shadow:0 10px 24px #c94f384f}.mobile-tabbar .mobile-add-tab small{margin-top:-1px;font-size:9px;font-weight:900}.modal-backdrop{padding:0}.modal-card{max-height:92dvh;padding:32px 20px calc(22px + env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:28px 28px 0 0;overflow-y:auto;box-shadow:0 -18px 55px #0723294d}.modal-card:before{content:"";background:#c9d1d2;border-radius:999px;width:42px;height:5px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.modal-tape{display:none}.chapter-form{gap:18px}.chapter-icon-options,.chapter-tone-options{grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:6px}.chapter-icon-options label>span,.chapter-tone-options label>span{border-radius:11px;min-height:44px}.chapter-tone-options label>span:before{width:24px;height:24px}.field textarea,.field select,.field input{border-radius:13px;min-height:50px}.modal-actions button{border-radius:14px;min-height:52px}.toast{bottom:calc(86px + env(safe-area-inset-bottom));border-radius:14px;justify-content:center;width:min(100% - 24px,420px);min-height:48px;transform:translateY(24px)}.toast.show{transform:translateY(0)}}@media (max-width:340px){.progress-postcard{padding:15px 14px 13px}.progress-card-head h2{font-size:17px}.progress-note{padding-inline:12px}.progress-note strong{font-size:40px}.postcard-stats dd{font-size:21px}.map-disclosure-toggle{grid-template-columns:minmax(0,1fr) 62px 80px;gap:6px}.travel-map-heading>strong{font-size:18px}.travel-map-quick-stats{flex-basis:62px;width:62px;padding-inline:6px}.travel-map-quick-stats strong{font-size:16px}.travel-map-quick-stats small{font-size:7px}.map-disclosure-action{width:80px;padding-inline:6px;font-size:9px}.domestic-map-visual svg{min-height:250px}.chapter-icon-options,.chapter-tone-options{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (display-mode:standalone){html,body{min-height:100dvh}.site-header{padding-top:env(safe-area-inset-top)}}@media (display-mode:standalone) and (max-width:590px){.connection-banner{top:calc(64px + env(safe-area-inset-top))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.wish-card,.progress-postcard,.postcard-stats,.check-button,.legend-item,.travel-map,.travel-map-visual,.travel-map-detail,.travel-map-filters button,.map-disclosure-action,.empty-chapter,.chapter-icon-options label>span,.chapter-tone-options label>span,.progress-rate-track{border:1px solid buttontext}.progress-rate-track i{background:highlight}.travel-map-country.visited,.travel-map-marker-dot,.domestic-map-prefecture.visited{fill:highlight;stroke:highlighttext}.check-button[aria-pressed=true]:after{content:"✓"}}@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}
