@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--navy-950:#060f1a;--navy-900:#08131f;--navy-850:#0c1a2b;--navy-800:#102238;--navy-700:#163049;--navy-600:#1f3d5c;--sea-500:#2f6f9f;--sea-400:#4f93c4;--sea-300:#86b9de;--ivory-50:#fbf7ee;--ivory-100:#f4ecd9;--ivory-200:#e9dcbf;--ivory-300:#d8c69d;--gold-300:#f0d488;--gold-400:#e3bf63;--gold-500:#d4a845;--gold-600:#a9832f;--gold-700:#7d5f1d;--bg:var(--navy-900);--bg-raised:var(--navy-850);--panel:var(--navy-800);--panel-2:var(--navy-700);--ink:var(--ivory-100);--ink-muted:#bcc7d3;--ink-faint:#93a3b8;--line:#d4a84547;--line-soft:#f4ecd91f;--accent:var(--gold-400);--paper:var(--ivory-100);--paper-ink:#182638;--paper-muted:#4a586a;--paper-line:#18263829;--danger:#ff9a8a;--success:#9fd8a8;--cat-food:#ec9a74;--cat-drink:#c49be3;--cat-craft:#ef8fb0;--cat-agriculture:#9fd18b;--cat-marine:#6fc6e0;--cat-luxury:#e6c25e;--font-display:"Fraunces Variable", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;--font-sans:"Inter Variable", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", "Noto Sans JP", Meiryo, system-ui, sans-serif;--font-mincho:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--radius-s:6px;--radius:12px;--radius-l:20px;--shadow:0 18px 50px -20px #0009;--gutter:clamp(16px, 4vw, 56px);--maxw:1560px;--header-h:64px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:radial-gradient(1200px 600px at 85% -10%, #2f6f9f38, transparent 60%), radial-gradient(900px 500px at -10% 20%, #d4a84512, transparent 60%), var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-sans);font-feature-settings:"palt" 0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.7;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:var(--gold-300);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--ivory-50)}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.2}p{margin:0}button,input,select{font:inherit;color:inherit}::selection{background:var(--gold-500);color:var(--navy-950)}:focus-visible{outline:3px solid var(--gold-300);outline-offset:3px;border-radius:4px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:2000;background:var(--gold-400);color:var(--navy-950);border-radius:var(--radius-s);padding:10px 16px;font-weight:700;text-decoration:none;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.container{width:100%;max-width:var(--maxw);padding:0 var(--gutter);margin:0 auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-400);font-size:.78rem;font-weight:500}.display{font-family:var(--font-display);letter-spacing:-.01em;font-variation-settings:"opsz" 144, "SOFT" 30;font-weight:600}.mono{font-family:var(--font-mono)}.muted{color:var(--ink-muted)}.page-head{padding:clamp(32px,6vw,72px) 0 clamp(20px,3vw,36px)}.page-head .display{margin:10px 0 12px;font-size:clamp(2.2rem,5.4vw,4.6rem);line-height:1.02}.page-head .sub{color:var(--ink-muted);font-size:clamp(1.05rem,1.6vw,1.3rem)}.page-head .lead{max-width:62ch;color:var(--ink-muted);margin-top:14px}.section{padding-block:clamp(36px,6vw,80px)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 24px;margin-bottom:24px;display:flex}.section-head h2{font-family:var(--font-display);font-size:clamp(1.7rem,3.2vw,2.6rem);line-height:1.05}.section-head .sub{color:var(--ink-muted);margin-top:6px}.rule{background:linear-gradient(90deg, transparent, var(--line), transparent);border:0;height:1px;margin:0}.btn{border:1px solid var(--line);min-height:44px;color:var(--ink);letter-spacing:.02em;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.btn:hover{border-color:var(--gold-400);color:var(--ivory-50);background:#d4a84514}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn-gold{background:linear-gradient(180deg, var(--gold-300), var(--gold-500));color:var(--navy-950);border-color:#0000;box-shadow:0 8px 24px -10px #d4a845b3}.btn-gold:hover{background:linear-gradient(180deg, #f7e2a6, var(--gold-400));color:var(--navy-950)}.btn-small{min-height:36px;padding:6px 12px;font-size:.85rem}.btn-mono{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.82rem}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line-soft);min-height:40px;color:var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:#102238b3;border-radius:999px;align-items:center;gap:7px;padding:6px 14px 6px 10px;font-size:.8rem;transition:background .2s,border-color .2s;display:inline-flex}.chip:hover{border-color:var(--gold-500)}.chip[aria-pressed=true]{background:var(--ivory-100);color:var(--navy-950);border-color:var(--ivory-100);font-weight:600}.chip .chip-count{opacity:.7;font-size:.72rem}.cat-badge{background:color-mix(in srgb, var(--cat) 18%, transparent);border:1px solid color-mix(in srgb, var(--cat) 55%, transparent);color:var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 4px;font-size:.72rem;line-height:1.4;display:inline-flex}.cat-badge .cat-icon{background:var(--cat);width:20px;height:20px;color:var(--navy-950);border-radius:50%;place-items:center;display:grid}.cat-badge .cat-icon svg{width:13px;height:13px}.on-paper .cat-badge{color:var(--paper-ink);background:color-mix(in srgb, var(--cat) 35%, var(--ivory-50));border-color:color-mix(in srgb, var(--cat) 70%, var(--paper-ink) 10%)}.tag{border:1px solid var(--line-soft);color:var(--ink-muted);border-radius:999px;padding:2px 10px;font-size:.78rem;text-decoration:none;display:inline-block}a.tag:hover{border-color:var(--gold-500);color:var(--ink)}.historic-badge{border:1px dashed var(--gold-400);color:var(--gold-300);font-family:var(--font-mono);letter-spacing:.14em;border-radius:4px;align-items:center;gap:6px;padding:2px 10px;font-size:.72rem;display:inline-flex}.meter{align-items:center;gap:10px;display:inline-flex}.meter-pips{gap:4px;display:inline-flex}.meter-pip{border:1.5px solid var(--gold-400);border-radius:2px;width:12px;height:12px;transform:rotate(45deg)}.meter-pip.on{background:var(--gold-400)}.meter-text{color:var(--ink-muted);font-size:.85rem}.on-paper .meter-pip{border-color:var(--gold-700)}.on-paper .meter-pip.on{background:var(--gold-600)}.on-paper .meter-text{color:var(--paper-muted)}.card{border:1px solid var(--line-soft);border-radius:var(--radius);background:linear-gradient(#163049bf,#102238bf);padding:22px}.paper{background:radial-gradient(800px 300px at 0% 0%, #ffffff8c, transparent 70%), linear-gradient(180deg, var(--ivory-50), var(--ivory-100));color:var(--paper-ink);border-radius:var(--radius);border:1px solid #a9832f59}.paper a{color:#6c4f12}.paper a:hover{color:var(--navy-950)}.paper .eyebrow{color:var(--gold-700)}.paper .muted{color:var(--paper-muted)}.grid-goods{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:18px;display:grid}.good-card{border-radius:var(--radius);border:1px solid var(--line-soft);background:linear-gradient(#163049d9,#0c1a2bf2);flex-direction:column;transition:border-color .2s,transform .25s;display:flex;position:relative;overflow:hidden}.good-card:hover{border-color:var(--gold-500);transform:translateY(-3px)}.good-card .gc-visual{aspect-ratio:16/9;background:var(--ivory-100);border-bottom:1px solid var(--line-soft);position:relative}.good-card .gc-kind{position:absolute;top:10px;left:10px;box-shadow:0 4px 12px -6px #0009}.good-card .gc-visual svg{width:100%;height:100%}.good-card .gc-body{flex-direction:column;flex:1;gap:8px;padding:16px 18px 18px;display:flex}.good-card h3{font-family:var(--font-display);font-size:1.28rem;line-height:1.2}.good-card h3 a{color:var(--ink);text-decoration:none}.good-card h3 a:after{content:"";z-index:1;position:absolute;inset:0}.good-card h3 a:focus-visible{outline:none}.good-card:focus-within{outline:3px solid var(--gold-300);outline-offset:2px}.good-card .gc-en{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-size:.72rem}.good-card .gc-where{color:var(--ink-muted);align-items:center;gap:5px;font-size:.85rem;display:inline-flex}.good-card .gc-what{color:var(--ink);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.93rem;line-height:1.6;display:-webkit-box;overflow:hidden}.kind-chip{background:var(--ivory-50);color:var(--navy-950);white-space:nowrap;border:1px solid #18263840;border-radius:999px;align-self:flex-start;align-items:center;padding:2px 11px;font-size:.76rem;font-weight:700;line-height:1.6;display:inline-flex}.good-card .gc-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:8px;display:flex}.good-card .gc-foot .btn{z-index:2;position:relative}.site-header{z-index:1000;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft);background:#08131fd1;position:sticky;top:0}.header-inner{height:var(--header-h);align-items:center;gap:16px;display:flex}.brand{min-width:0;color:var(--ink);flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand svg{width:34px;height:34px}.brand-text{flex-direction:column;min-width:0;line-height:1.05;display:flex;overflow:hidden}.brand-text strong{font-family:var(--font-display);letter-spacing:.04em;font-size:1.02rem}.brand-text span{font-family:var(--font-mono);letter-spacing:.2em;color:var(--gold-400);font-size:.62rem}.main-nav{align-items:center;gap:2px;margin-left:auto;display:flex}.main-nav a{color:var(--ink-muted);white-space:nowrap;border-radius:8px;padding:8px 11px;font-size:.88rem;text-decoration:none;position:relative}.main-nav a:hover{color:var(--ink);background:#f4ecd90f}.main-nav a[aria-current=page]{color:var(--ink)}.main-nav a[aria-current=page]:after{content:"";background:var(--gold-400);border-radius:2px;height:2px;position:absolute;bottom:2px;left:11px;right:11px}.nav-badge{background:var(--gold-400);min-width:18px;height:18px;color:var(--navy-950);border-radius:9px;place-items:center;margin-left:4px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-grid}.header-tools{align-items:center;gap:8px;display:flex}.header-search{position:relative}.header-search input{border:1px solid var(--line-soft);width:210px;height:38px;color:var(--ink);background:#060f1a99;border-radius:999px;padding:0 12px 0 34px;font-size:.85rem}.header-search input::placeholder{color:var(--ink-faint)}.header-search svg{width:16px;height:16px;color:var(--ink-faint);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.lang-toggle{border:1px solid var(--line);cursor:pointer;height:38px;font-family:var(--font-mono);letter-spacing:.06em;white-space:nowrap;background:0 0;border-radius:999px;padding:0 12px;font-size:.78rem}.lang-toggle:hover{border-color:var(--gold-400)}.menu-toggle{border:1px solid var(--line-soft);cursor:pointer;background:0 0;border-radius:10px;place-items:center;width:44px;height:44px;display:none}.menu-toggle svg{width:22px;height:22px}@media (width<=1280px){.header-search input{width:160px}}@media (width<=1240px){.menu-toggle{display:inline-grid}.main-nav{top:var(--header-h);padding:8px var(--gutter) 18px;border-bottom:1px solid var(--line);background:#08131ff7;flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;left:0;right:0}.main-nav.open{display:flex}.main-nav a{border-bottom:1px solid var(--line-soft);border-radius:0;padding:14px 6px;font-size:1rem}.main-nav a[aria-current=page]:after{width:3px;height:auto;inset:14px auto 14px 0}.header-tools{margin-left:auto}}@media (width<=640px){.header-search,.brand-text span{display:none}.brand-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.brand{flex-shrink:1}.lang-long{display:none}.header-inner{gap:10px}}.site-footer{border-top:1px solid var(--line-soft);color:var(--ink-faint);margin-top:40px;padding:40px 0 56px;font-size:.85rem}.footer-grid{flex-wrap:wrap;justify-content:space-between;gap:20px 40px;display:flex}.footer-grid nav{flex-wrap:wrap;gap:6px 18px;display:flex}.footer-grid nav a{color:var(--ink-muted)}.map-shell{border-radius:var(--radius-l);border:1px solid var(--line);box-shadow:var(--shadow);isolation:isolate;position:relative;overflow:hidden}.map-shell .leaflet-container{width:100%;height:100%;font-family:var(--font-sans);background:radial-gradient(1200px 700px at 60% 40%,#11314f 0%,#0a1d31 55%,#071422 100%)}.map-shell.parchment .leaflet-container{background:radial-gradient(1000px 600px at 50% 40%,#f6eedb 0%,#ecdfc0 70%,#dfcc9f 100%)}.map-shell:after{content:"";pointer-events:none;z-index:500;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #f4ecd90d,inset 0 0 80px #00000059}.map-shell.parchment:after{box-shadow:inset 0 0 0 6px #7d5f1d40,inset 0 0 90px #7d5f1d59}.leaflet-control-attribution{color:var(--ink-faint)!important;background:#060f1ab3!important;font-size:10px!important}.leaflet-control-attribution a{color:var(--ink-muted)!important}.parchment .leaflet-control-attribution{color:#5b4a2a!important;background:#f4ecd9cc!important}.leaflet-bar a{color:var(--ink)!important;border-color:var(--line-soft)!important;background:#0c1a2beb!important;width:36px!important;height:36px!important;line-height:34px!important}.leaflet-bar a:hover{background:var(--navy-700)!important}.leaflet-bar{border:1px solid var(--line)!important;box-shadow:none!important}.map-marker{background:0 0;border:0;place-items:center;display:grid}.map-marker .mk{width:var(--mk,14px);height:var(--mk,14px);background:radial-gradient(circle at 35% 35%, #fff3c9, var(--gold-400) 45%, var(--gold-600));border:2px solid var(--navy-950);border-radius:50%;transition:transform .2s;display:block;position:relative;box-shadow:0 0 0 1px #f0d488b3,0 0 16px #f0d4888c}.map-marker .mk:after{content:"";border:1px solid #f0d48873;border-radius:50%;animation:2.8s ease-out infinite pulse;position:absolute;inset:-7px}.map-marker.is-dim .mk{background:var(--navy-600);opacity:.55;box-shadow:0 0 0 1px #f4ecd940}.map-marker.is-dim .mk:after{display:none}.map-marker:hover .mk,.map-marker:focus .mk{transform:scale(1.35)}.map-marker:focus{outline:none}.map-marker:focus-visible .mk{outline:3px solid var(--ivory-50);outline-offset:4px}.map-marker.port .mk{background:var(--sea-300);border-radius:3px;transform:rotate(45deg);box-shadow:0 0 0 1px #86b9decc,0 0 12px #86b9de80}.map-marker.port.current .mk{background:var(--gold-300);box-shadow:0 0 0 2px var(--ivory-50), 0 0 20px #f0d488cc}.map-marker.port .mk:after{display:none}.map-marker.stop .mk{--mk:12px;background:var(--navy-700);box-shadow:0 0 0 1px #f0d48899}.map-marker.stop.lit .mk{background:var(--gold-300);box-shadow:0 0 0 2px #fff3c9e6,0 0 18px #f0d488e6}.map-marker.stop .stop-num{font-family:var(--font-mono);color:var(--ink);white-space:nowrap;background:#060f1ad9;border-radius:3px;padding:0 5px;font-size:11px;position:absolute;top:-22px;left:50%;transform:translate(-50%)}.parchment .map-marker.stop .stop-num{color:#3a2c12;background:#f4ecd9eb}.ship-marker{background:0 0;border:0}.ship-marker svg{filter:drop-shadow(0 0 8px #f0d488cc);width:34px;height:34px}@keyframes pulse{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.route-line{transition:stroke-opacity .4s,stroke-width .4s}.route-line.lit{animation:1.6s ease-in-out infinite alternate route-glow}@keyframes route-glow{0%{stroke-opacity:.75}to{stroke-opacity:1}}.route-line.drawing{stroke-dasharray:6 10;animation:.9s linear infinite dash}@keyframes dash{to{stroke-dashoffset:-32px}}.leaflet-popup-content-wrapper{border:1px solid var(--gold-600);background:var(--ivory-100)!important;color:var(--paper-ink)!important;border-radius:12px!important;box-shadow:0 20px 40px -12px #0009!important}.leaflet-popup-tip{background:var(--ivory-100)!important}.leaflet-popup-content{font-family:var(--font-sans);min-width:220px;margin:16px 18px!important;font-size:.9rem!important;line-height:1.55!important}.leaflet-container a.leaflet-popup-close-button{color:var(--paper-ink)!important;width:32px!important;height:32px!important;font-size:22px!important}.popup .eyebrow{color:var(--gold-700);font-size:.68rem}.popup h3{font-family:var(--font-display);margin:2px 0;font-size:1.3rem}.popup .popup-meta{color:var(--paper-muted);font-size:.82rem}.popup ul{gap:6px;margin:10px 0 12px;padding:0;list-style:none;display:grid}.popup ul.popup-goods{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:6px 0 10px}.popup-good{text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:4px 2px;text-decoration:none;display:flex;color:var(--paper-ink)!important}.popup-good:hover{background:#a9832f24}.popup-good svg{border:1px solid var(--paper-line);border-radius:10px;flex-shrink:0;width:56px;height:56px}.popup-good>span{flex-direction:column;line-height:1.3;display:flex}.popup-good-name{font-size:.78rem;font-weight:700}.popup-good-kind{color:var(--paper-muted);font-size:.68rem}.popup .btn{width:100%;min-height:38px}.popup .btn-gold{color:var(--navy-950)!important}.notice{border-radius:var(--radius);border:1px solid var(--line);background:#d4a84514;align-items:flex-start;gap:12px;padding:14px 16px;font-size:.9rem;display:flex}.notice strong{font-family:var(--font-mono);letter-spacing:.08em;color:var(--gold-300);white-space:nowrap}.game-banner{border-radius:var(--radius-s);border:1px solid var(--gold-500);background:repeating-linear-gradient(-45deg,#d4a84529 0 10px,#d4a8450f 10px 20px);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 16px;font-size:.88rem;display:flex}.game-banner .gb-tag{font-family:var(--font-mono);letter-spacing:.14em;background:var(--gold-400);color:var(--navy-950);border-radius:3px;padding:2px 8px;font-weight:600}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-muted);font-size:.85rem}.input,.select{border:1px solid var(--line-soft);min-height:46px;color:var(--ink);background:#060f1ab3;border-radius:10px;padding:0 14px}.input:focus,.select:focus{border-color:var(--gold-400)}.input::placeholder{color:var(--ink-faint)}.select option{background:var(--navy-850)}.loading{min-height:50vh;color:var(--ink-muted);font-family:var(--font-mono);letter-spacing:.2em;place-items:center;display:grid}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.map-marker .mk:after{display:none}}.gi-ink{stroke-width:var(--sw,2px)}.gi-ink .thin{stroke-width:calc(var(--sw,2px) * .55)}.dest-marker{position:relative}.dest-marker .dest-dot{background:var(--gold-300);border-radius:50%;width:12px;height:12px;position:absolute;top:9px;left:9px;box-shadow:0 0 10px 3px #f0d488e6}.dest-marker .dest-ring{border:2px solid var(--gold-300);border-radius:50%;animation:1.6s ease-out infinite dest-pulse;position:absolute;inset:0}@keyframes dest-pulse{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}.sea-lane.sailed{filter:drop-shadow(0 0 4px #f0d488cc)}@media (width>=1241px) and (width<=1480px){.header-search{display:none}}.footer-studio{margin-top:12px}.footer-studio a{min-height:32px;color:var(--ink-muted);align-items:center;display:inline-flex}.small{font-size:.8rem}.h-sec{font-family:var(--font-display);margin:4px 0 12px;font-size:clamp(1.35rem,2.2vw,1.75rem)}.breadcrumb{letter-spacing:.06em;color:var(--ink-faint);padding-top:22px;font-size:.78rem}.breadcrumb a{color:var(--ink-muted)}.facts{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px 24px;margin:22px 0 0;display:grid}.facts dt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-400);font-size:.7rem}.facts dd{margin:2px 0 0}.map-caption{margin-top:10px;font-size:.85rem}.empty{text-align:center;padding:40px}.chip .chip-dot{background:var(--cat);width:22px;height:22px;color:var(--navy-950);border-radius:50%;place-items:center;display:inline-grid}.chip .chip-ja{font-family:var(--font-sans);letter-spacing:0;text-transform:none;font-size:.86rem;font-weight:600}.compare-btn-wrap{flex-direction:column;align-items:flex-end;display:inline-flex;position:relative}.compare-msg{color:var(--danger);font-size:.72rem}.compare-msg:empty{display:none}.hero{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr);align-items:center;gap:clamp(24px,4vw,64px);padding-top:clamp(28px,4vw,56px);padding-bottom:clamp(20px,2.4vw,32px);display:grid}.hero-title{letter-spacing:-.035em;font-variation-settings:"opsz" 144, "SOFT" 0, "WONK" 0;flex-direction:column;margin:14px 0 22px;font-size:clamp(2.7rem,5.6vw,6.2rem);line-height:.86;display:flex}.hero-title span:nth-child(2){color:var(--ivory-200)}.hero-lab{color:var(--gold-400);font-variation-settings:"opsz" 144, "SOFT" 100, "WONK" 1;font-style:italic}.hero-lead{max-width:54ch;color:var(--ink-muted);margin-top:14px}.hero-kid{color:var(--ivory-50);letter-spacing:.01em;font-size:clamp(1.35rem,2.4vw,2.05rem);font-weight:800;line-height:1.45}.hero-kid:after{content:"";background:linear-gradient(90deg, var(--gold-300), var(--gold-600));border-radius:2px;width:72px;height:4px;margin-top:14px;display:block}.hero-chips{flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none;display:flex}.hero-chips li{border:1px solid var(--line);background:#10223899;border-radius:999px;align-items:baseline;gap:4px;padding:6px 14px;font-size:.92rem;display:inline-flex}.hero-chips strong{font-family:var(--font-display);color:var(--gold-300);font-size:1.25rem}.hero-ctas{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.btn-big{min-height:54px;padding:14px 26px;font-size:1.05rem}.hero-collage{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.collage-item{border:1px solid var(--line-soft);color:var(--ink);text-align:center;animation:6s ease-in-out infinite bob;animation-delay:calc(var(--i) * -.7s);background:linear-gradient(#163049e6,#0c1a2be6);border-radius:18px;flex-direction:column;align-items:center;gap:6px;padding:8px 8px 10px;font-size:.82rem;font-weight:600;line-height:1.3;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.collage-item svg{border-radius:12px;width:100%;height:auto}.collage-item span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.collage-item:hover,.collage-item:focus-visible{border-color:var(--gold-400);color:var(--ivory-50);animation-play-state:paused;transform:translateY(-4px)rotate(-1.5deg)}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.section-tight{padding-block:clamp(24px,4vw,52px)}.home-map{position:relative}.cat-row-title{margin:28px 0 12px;font-size:1.1rem}.cat-tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.cat-tile{border:1px solid var(--line-soft);color:var(--ink);background:#102238bf;border-radius:14px;grid-template-columns:40px 1fr auto;align-items:center;gap:6px 12px;padding:12px 14px;text-decoration:none;transition:border-color .2s,transform .2s;display:grid}.cat-tile:hover{border-color:var(--cat);color:var(--ivory-50);transform:translateY(-2px)}.cat-tile-icon{background:var(--cat);width:40px;height:40px;color:var(--navy-950);border-radius:50%;grid-row:span 2;place-items:center;display:grid}.cat-tile-name{flex-direction:column;font-weight:700;line-height:1.25;display:flex}.cat-tile-name .mono{letter-spacing:.14em;color:var(--ink-faint);font-size:.66rem;font-weight:500}.cat-tile-num{color:var(--gold-300);font-size:1.3rem}.cat-tile-bar{background:#f4ecd914;border-radius:3px;grid-column:2/4;height:6px;overflow:hidden}.cat-tile-bar span{background:var(--cat);border-radius:3px;height:100%;display:block}.entries{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.entry{border-radius:var(--radius-l);border:1px solid var(--line);background:linear-gradient(160deg, var(--navy-700), var(--navy-850));color:var(--ink);flex-direction:column;text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex;overflow:hidden}.entry:hover{border-color:var(--gold-400);color:var(--ink);transform:translateY(-4px);box-shadow:0 18px 40px -22px #d4a845b3}.entry-visual{background:linear-gradient(180deg, var(--ivory-50), var(--ivory-200));padding:16px 22px 8px;display:block;position:relative}.entry-art{width:100%;max-height:170px;margin:0 auto}.entry-pulse{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite pulse-soft}@keyframes pulse-soft{0%,to{opacity:.9;transform:scale(.7)}50%{opacity:.25;transform:scale(1.25)}}.entry-n{color:var(--gold-700);letter-spacing:.2em;font-size:.8rem;font-weight:600;position:absolute;top:10px;left:14px}.entry-text{flex-direction:column;flex:1;gap:6px;padding:18px 22px 22px;display:flex}.entry-sub{color:var(--ivory-50);font-size:clamp(1.35rem,2vw,1.6rem);font-weight:800;line-height:1.3}.entry-title{font-family:var(--font-mono);letter-spacing:.16em;color:var(--gold-400);font-size:.78rem;font-weight:500}.entry-desc{color:var(--ink-muted);margin-top:4px;font-size:.98rem}.entry-cta{background:linear-gradient(180deg, var(--gold-300), var(--gold-500));color:var(--navy-950);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin-top:auto;padding:9px 18px;font-size:.95rem;font-weight:700;display:inline-flex}.entry-desc+.entry-cta{margin-top:14px}.today-wrap{grid-template-columns:minmax(0,2.4fr) minmax(260px,1fr);gap:18px;display:grid}.today{grid-template-columns:minmax(240px,.85fr) 1.4fr;display:grid;overflow:hidden}.today-visual{min-height:320px;display:block}.today-visual svg{width:100%;height:100%}.today-body{padding:clamp(22px,3vw,40px)}.today-name{letter-spacing:-.01em;margin:10px 0 6px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}.today-place{letter-spacing:.1em;text-transform:uppercase;color:var(--paper-muted);font-size:.82rem}.today-chips{margin-top:12px}.today-what{background:#fff;border:2px solid #a9832f4d;border-radius:12px;margin-top:14px;padding:14px 16px}.today-what p:nth-child(2){margin-top:2px;font-size:1.08rem;font-weight:600}.today-what .muted{margin-top:4px;font-size:.92rem}.today-why{border-left:3px solid var(--gold-600);background:#a9832f14;border-radius:0 8px 8px 0;margin-top:12px;padding:12px 16px;font-size:.95rem}.today-note{font-size:.82rem}.discover-teaser{text-align:center;background:radial-gradient(300px 200px at 50% 0%, #d4a84533, transparent 70%), linear-gradient(180deg, var(--navy-700), var(--navy-850));flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.discover-teaser h2{font-size:1.4rem;line-height:1.4}.surprise-mini{background:radial-gradient(circle at 35% 30%, #fff3c8, var(--gold-400) 55%, var(--gold-600));width:168px;height:168px;color:var(--navy-950);border-radius:50%;align-content:center;place-items:center;gap:2px;margin-top:8px;text-decoration:none;transition:transform .2s;animation:3s ease-in-out infinite breathe;display:grid;box-shadow:0 0 0 10px #d4a8451f,0 18px 40px -16px #d4a845cc}.surprise-mini:hover{color:var(--navy-950);transform:scale(1.06)rotate(-3deg)}.surprise-mini .mono{letter-spacing:.14em;font-size:.95rem;font-weight:700}.surprise-mini-ja{font-size:.82rem;font-weight:700}@keyframes breathe{0%,to{box-shadow:0 0 0 8px #d4a8451f,0 18px 40px -16px #d4a845cc}50%{box-shadow:0 0 0 18px #d4a8450f,0 18px 40px -16px #d4a845cc}}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:16px;display:grid}.good-tile{border:1px solid var(--line-soft);color:var(--ink);background:linear-gradient(#163049d9,#0c1a2bf2);border-radius:16px;flex-direction:column;text-decoration:none;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.good-tile:hover,.good-tile:focus-visible{border-color:var(--gold-400);color:var(--ink);transform:translateY(-3px)}.gt-visual{display:block;position:relative}.gt-visual svg{width:100%;height:auto}.gt-tag{color:#fff;background:#d8342f;border-radius:999px;padding:2px 10px;font-size:.9rem;font-weight:800;position:absolute;top:8px;right:8px;box-shadow:0 4px 10px -4px #00000080}.gt-reason{color:var(--gold-300);background:#08131fd1;border-radius:999px;padding:2px 10px;font-size:.74rem;font-weight:700;position:absolute;bottom:8px;left:8px}.gt-body{flex-direction:column;flex:1;gap:6px;padding:12px 14px 16px;display:flex}.gt-name{font-size:1.08rem;font-weight:700;line-height:1.3}.gt-where{color:var(--ink-muted);align-items:center;gap:4px;font-size:.8rem;display:inline-flex}.gt-note{color:var(--ink);opacity:.88;font-size:.86rem;line-height:1.55}.route-pills{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.route-pill{border:1px solid var(--line-soft);color:var(--ink);background:#10223899;border-radius:14px;flex-direction:column;gap:2px;padding:12px 18px;text-decoration:none;display:inline-flex}.route-pill:hover{border-color:var(--gold-400);color:var(--ink)}.route-pill .mono{color:var(--gold-300);letter-spacing:.16em;font-size:.78rem}.route-pill-path{color:var(--ink-muted);font-size:.88rem}.age-teaser{border-radius:var(--radius-l);color:#2c220f;border:1px solid var(--gold-600);background:radial-gradient(600px 300px at 80% 20%,#ffffff80,#0000 70%),repeating-linear-gradient(0deg,#7d5f1d0f 0 1px,#0000 1px 40px),repeating-linear-gradient(90deg,#7d5f1d0f 0 1px,#0000 1px 40px),linear-gradient(135deg,#f4e9cf,#e2cf9f);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:clamp(28px,4vw,56px);text-decoration:none;display:flex;box-shadow:inset 0 0 60px #7d5f1d40}.age-teaser:hover{color:#2c220f}.age-teaser .eyebrow{color:#7d5f1d}.age-teaser h2{margin:6px 0 10px;font-size:clamp(2rem,4.6vw,4rem);line-height:1}.age-teaser p{max-width:60ch}.explore-tools{flex-direction:column;gap:14px;margin-bottom:18px;display:flex}.tools-label{letter-spacing:.12em;color:var(--ink-faint);align-self:center;margin-right:4px;font-size:.75rem}.explore-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;display:grid}.region-list{max-height:clamp(440px,74vh,900px);padding:18px;overflow:auto}.region-list-head{background:var(--navy-800);z-index:1;justify-content:space-between;align-items:baseline;gap:10px;margin:-18px -18px 10px;padding:18px 18px 10px;display:flex;position:sticky;top:-18px}.region-list-head p{font-size:.72rem}.region-group summary{cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.region-group summary::-webkit-details-marker{display:none}.region-group summary:before{content:"▸";color:var(--gold-300);transition:transform .2s}.region-group[open] summary:before{transform:rotate(90deg)}.region-group h3{color:var(--gold-300);margin:14px 0 6px;font-size:.82rem;font-weight:600}.region-group ul{margin:0;padding:0;list-style:none}.region-group a{color:var(--ink);border-radius:6px;grid-template-columns:minmax(0,1fr) auto 1.6em;align-items:center;gap:10px;padding:6px 8px;font-size:.92rem;text-decoration:none;display:grid}.region-group a:hover{background:#f4ecd90f}.region-group a>.mono{text-align:right}.rl-name{flex-direction:column;line-height:1.3;display:flex}.rl-country{font-size:.72rem}.rl-thumbs{display:flex}.rl-thumbs svg{border:2px solid var(--navy-800);border-radius:8px;width:34px;height:34px;margin-left:-8px}.rl-thumbs svg:first-child{margin-left:0}.kid-head .display{font-family:var(--font-sans);letter-spacing:.01em;font-size:clamp(2rem,4.6vw,3.6rem);font-weight:800}.kid-head .display:lang(en),:lang(en) .kid-head .display{font-family:var(--font-display)}.kid-head .lead{color:var(--ink);font-size:1.05rem}.howto{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(90deg,#d4a8451a,#10223899);margin-bottom:18px;padding:14px 18px}.howto-steps{flex-wrap:wrap;gap:10px 26px;margin:8px 0 0;padding:0;list-style:none;display:flex}.howto-steps li{align-items:center;gap:10px;font-size:1.02rem;font-weight:700;display:inline-flex}.howto-n{background:var(--gold-400);width:28px;height:28px;color:var(--navy-950);font-family:var(--font-mono);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:inline-grid}.howto-dot{background:radial-gradient(circle at 35% 35%, #fff3c8, var(--gold-400));border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 4px #f0d4884d,0 0 14px #f0d488e6}.howto-note{margin-top:8px;font-size:.88rem}.quick-words{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.quick-word{border:1px solid var(--line);min-height:38px;color:var(--ink);cursor:pointer;background:#f4ecd90f;border-radius:999px;padding:4px 14px;font-weight:600}.quick-word:hover{border-color:var(--gold-400)}.quick-word.on{background:var(--gold-400);color:var(--navy-950);border-color:var(--gold-400)}.region-head h1{font-size:clamp(2.6rem,6vw,5.4rem)}.region-top{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:stretch;gap:18px;display:grid}.region-land{padding:clamp(22px,3vw,36px)}.region-summary{font-family:var(--font-display);margin-top:10px;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.55}.region-summary:lang(ja),:lang(ja) .region-summary{font-family:var(--font-mincho)}.region-port{margin-top:20px;font-size:.92rem}.map-marker.pin .pin-mk{background:var(--cat);border:2px solid var(--navy-950);box-shadow:0 0 0 1px var(--ivory-100), 0 0 10px var(--cat)}.map-marker.pin .pin-mk:after{display:none}.nearby{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.nearby-card{border-radius:var(--radius);border:1px solid var(--line-soft);color:var(--ink);background:#10223899;flex-direction:column;gap:4px;padding:18px;text-decoration:none;display:flex}.nearby-card:hover{border-color:var(--gold-400);color:var(--ink)}.nearby-name{font-size:1.35rem}.goods-tools{flex-direction:column;gap:16px;display:flex}.goods-search{grid-template-columns:minmax(0,1fr) 200px 200px;gap:14px;display:grid}.results-count{color:var(--ink-muted);letter-spacing:.08em;margin:20px 0 14px;font-size:.85rem}.load-more{justify-content:center;margin-top:26px;display:flex}.product-top{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);padding-top:24px;display:grid}.product-visual-frame{top:calc(var(--header-h) + 20px);aspect-ratio:1;border-radius:var(--radius-l);border:1px solid var(--line);box-shadow:var(--shadow);position:sticky;overflow:hidden}.product-name{margin:14px 0 6px;font-size:clamp(2.4rem,5vw,4.4rem);line-height:1}.product-en{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.9rem}.product-short{margin-top:16px;font-size:1.15rem}.facts-product{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 0}.facts-product .span-2{grid-column:span 2}.fact-note{color:var(--ink-faint);font-size:.75rem;display:block}.game-value{border-radius:var(--radius);border:1px solid var(--line);background:#d4a8450f;gap:10px;margin-top:20px;padding:18px;display:grid}.game-value-num{font-size:2.2rem;line-height:1.1}.game-value-num .mono{letter-spacing:.16em;color:var(--gold-300);font-size:.9rem}.product-actions{align-items:flex-start;margin-top:18px}.why-here{grid-template-columns:minmax(220px,.7fr) minmax(0,2fr);gap:clamp(20px,4vw,56px);margin-top:clamp(40px,6vw,72px);padding:clamp(26px,4vw,56px);display:grid;position:relative;overflow:hidden}.why-here:before{content:"?";font-family:var(--font-display);color:#a9832f1a;pointer-events:none;font-size:22rem;line-height:1;position:absolute;bottom:-80px;right:-10px}.why-label h2{color:var(--paper-ink);margin:10px 0 8px;font-size:clamp(2.6rem,6vw,5rem);line-height:.95}.why-sub{color:var(--paper-muted);font-weight:600}.why-text{font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.85;position:relative}.why-hints-title{margin-top:22px}.why-hints{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.why-hints li{border:1px solid var(--paper-line);background:#ffffffb3;border-radius:12px;flex-direction:column;gap:2px;padding:12px 16px;display:flex;position:relative}.why-hint-label{color:var(--gold-700);font-size:.75rem;font-weight:700}.why-hints strong{font-size:1.02rem}.why-hints li>span:last-child{color:var(--paper-muted);font-size:.92rem}.words{background:#2f6f9f14;border:1px dashed #2f6f9f59;border-radius:12px;margin-top:18px;padding:14px 16px;position:relative}.words dl{gap:6px;margin:6px 0 0;display:grid}.words dl>div{grid-template-columns:minmax(7em,auto) 1fr;gap:12px;font-size:.92rem;display:grid}.words dt{font-weight:700}.words dd{color:var(--paper-muted);margin:0}.what-box{margin-top:18px;padding:18px 20px}.what-main{margin-top:6px;font-size:clamp(1.1rem,1.6vw,1.3rem);font-weight:700;line-height:1.6}.what-where{color:var(--paper-muted);align-items:center;gap:6px;margin-top:8px;font-weight:600;display:flex}.what-short{border-top:1px dashed var(--paper-line);color:var(--paper-muted);margin-top:8px;padding-top:8px}.kind-chip-big{padding:4px 14px;font-size:.9rem}.history-steps{border-left:2px solid var(--line);gap:12px;margin:0;padding:0 0 0 14px;list-style:none;display:grid}.history-steps li{flex-direction:column;gap:2px;display:flex;position:relative}.history-steps li:before{content:"";background:var(--gold-400);border:2px solid var(--navy-800);border-radius:50%;width:12px;height:12px;position:absolute;top:8px;left:-21px}.history-when{color:var(--gold-300);letter-spacing:.06em;background:#d4a84529;border-radius:4px;align-self:flex-start;padding:0 8px;font-size:.8rem}.more-data{margin-top:18px}.more-data summary{cursor:pointer;align-items:center;gap:10px;min-height:32px;font-weight:700;display:flex}.more-data[open] summary{margin-bottom:4px}.product-sections{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.product-sections .card{flex-direction:column;gap:4px;display:flex}.tag-row{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.unknown{color:var(--ink-muted)}.unknown .mono{color:var(--gold-300);letter-spacing:.14em}.geo-card .map-shell{box-shadow:none;margin-top:14px}.product-route{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:34px;display:flex}.product-route>.route-viewer{width:100%}.product-route-head h3{margin:6px 0;font-size:clamp(1.6rem,3vw,2.4rem)}.shadow-note{background:#c46a5a1a;border-left:3px solid #c46a5a;border-radius:0 10px 10px 0;max-width:90ch;padding:14px 18px;font-size:.95rem}.shadow-note strong{font-family:var(--font-mono);letter-spacing:.14em;color:#f0a898;margin-bottom:4px;font-size:.75rem;display:block}.shadow-note.big{margin-top:24px}.sources ol{gap:6px;margin:0;padding-left:1.4em;display:grid}.sources-note{max-width:80ch;margin-top:14px;font-size:.85rem}.route-viewer{grid-template-columns:minmax(0,1fr) 340px;gap:18px;display:grid}.route-side{flex-direction:column;gap:12px;min-width:0;display:flex}.route-controls{gap:8px;display:flex}.route-stops{max-height:420px;margin:0;padding:0;list-style:none;overflow:auto}.route-stops li{position:relative}.route-stops button{text-align:left;cursor:pointer;opacity:.55;background:0 0;border:1px solid #0000;border-radius:10px;gap:12px;width:100%;padding:10px 12px;transition:opacity .4s,background .4s,border-color .4s;display:flex}.route-stops li.lit button{opacity:1}.route-stops li.current button{border-color:var(--gold-400);background:#d4a8451a}.rs-num{border:1px solid var(--gold-500);width:30px;height:30px;color:var(--gold-300);border-radius:50%;flex-shrink:0;place-items:center;font-size:.75rem;display:grid}.route-stops li.lit .rs-num{background:var(--gold-400);color:var(--navy-950)}.rs-body{flex-direction:column;min-width:0;display:flex}.rs-name{font-weight:600}.rs-era{letter-spacing:.1em;color:var(--gold-300);font-size:.72rem}.rs-note{color:var(--ink-muted);font-size:.85rem}.rs-arrow{color:var(--gold-500);padding-left:22px;font-size:.9rem;line-height:1;display:block}.route-schematic{font-size:.78rem}.route-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px;margin:28px 0 0;padding:0;list-style:none;display:grid}.route-card{border-radius:var(--radius);border:1px solid var(--line-soft);height:100%;color:var(--ink);background:linear-gradient(#163049bf,#0c1a2be6);flex-direction:column;gap:8px;padding:22px;text-decoration:none;display:flex}.route-card:hover{border-color:var(--gold-400);color:var(--ink)}.route-card-good{color:var(--gold-300);letter-spacing:.2em;font-size:.8rem}.route-card-name{font-size:1.6rem;line-height:1.1}.route-card-path{color:var(--ink-muted);font-size:.88rem}.route-card-foot{letter-spacing:.1em;color:var(--ink-faint);justify-content:space-between;align-items:center;margin-top:auto;font-size:.75rem;display:flex}.route-flow{color:var(--ivory-200);margin-top:18px;font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.6}.flow-arrow{color:var(--gold-400)}.age-page{color:#2c220f;border-bottom:1px solid var(--gold-600);background:radial-gradient(1200px 500px at 50% 0,#ffffff8c,#0000 70%),repeating-linear-gradient(0deg,#7d5f1d0d 0 1px,#0000 1px 48px),repeating-linear-gradient(90deg,#7d5f1d0d 0 1px,#0000 1px 48px),linear-gradient(#f3e8cd,#e7d6ad);padding-bottom:40px}.age-page a{color:#6b4a0e}.age-page a:hover{color:#1d150a}.age-page .eyebrow{color:#7d5f1d}.age-page :focus-visible{outline-color:#6b2737}.age-head .display{color:#2c220f;font-variation-settings:"opsz" 144, "SOFT" 100, "WONK" 1;font-style:italic}.age-head .lead{color:#4a3a1c;font-family:var(--font-mincho);max-width:70ch;font-size:1.08rem}.age-head .lead:lang(en){font-family:var(--font-display)}.age-disclaimer{color:#3a1d12;background:#8c2f1b12;border:1px solid #8c2f1b;border-radius:10px;margin-bottom:26px;padding:14px 18px}.age-disclaimer strong{font-family:var(--font-mono);letter-spacing:.16em;color:#8c2f1b;margin-right:8px}.age-chart .eyebrow{margin-bottom:10px}.age-legend{flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;padding:0;font-size:.9rem;list-style:none;display:flex}.age-legend li{align-items:center;gap:8px;display:inline-flex}.legend-line{border-radius:2px;width:26px;height:4px;display:inline-block}.age-h2{color:#2c220f;margin-bottom:20px;font-size:clamp(1.8rem,3.4vw,2.8rem);font-style:italic}.timeline{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:22px;margin:0;padding:10px 0 18px;list-style:none;display:grid}.timeline li{border-top:2px solid #7d5f1d;padding:18px 8px 0 0;position:relative}.timeline li:before{content:"";background:#f3e8cd;border:2px solid #7d5f1d;width:12px;height:12px;position:absolute;top:-8px;left:0;transform:rotate(45deg)}.tl-year{color:#6b2737;font-size:1.7rem;display:block}.tl-text{color:#3d2f14;font-size:.95rem;font-weight:700;display:block}.tl-why{color:#4a3a1c;margin-top:4px;font-size:.9rem;line-height:1.7;display:block}.tl-lead{color:#4a3a1c;margin:-6px 0 14px}.aoe-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px;display:grid}.aoe-card{background:#fffcf3b8;border:1px solid #7d5f1d73;border-radius:6px;flex-direction:column;gap:10px;padding:24px;display:flex;position:relative;box-shadow:inset 0 1px #fffc,0 12px 30px -20px #3c280a99}.aoe-card h3{font-size:2rem;line-height:1}.aoe-no{color:#7d5f1d;letter-spacing:.14em;font-size:.75rem;position:absolute;top:16px;right:18px}.aoe-en{letter-spacing:.16em;color:#6f5b33;font-size:.78rem}.aoe-powers .mono,.aoe-shadow .mono{letter-spacing:.14em;color:#7d5f1d;font-size:.7rem;display:block}.aoe-shadow{background:#8c2f1b0f;border-left:3px solid #8c2f1b;padding:10px 12px;font-size:.9rem}.aoe-shadow .mono{color:#8c2f1b}.aoe-goods{flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;font-size:.92rem;list-style:none;display:flex}.aoe-route{align-items:center;gap:6px;margin-top:auto;font-weight:600;display:inline-flex}.trade-start{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:18px;margin-bottom:18px;display:grid}.rules{gap:6px;margin:10px 0 0;padding-left:1.3em;display:grid}.formula{border:1px dashed var(--line);letter-spacing:.06em;color:var(--gold-300);border-radius:8px;margin-top:16px;padding:10px 12px;font-size:.72rem}.start-ports{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.start-port{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(160deg, var(--navy-700), var(--navy-850));text-align:left;cursor:pointer;flex-direction:column;gap:6px;width:100%;height:100%;padding:18px;transition:border-color .2s,transform .2s;display:flex}.start-port:hover{border-color:var(--gold-400);transform:translateY(-2px)}.sp-name{font-size:1.7rem;line-height:1.1}.sp-goods{font-size:.85rem}.sp-cta{letter-spacing:.08em;color:var(--gold-300);margin-top:auto;font-size:.75rem}.dash{border:1px solid var(--line);border-radius:var(--radius);background:#102238b3;grid-template-columns:1.6fr repeat(5,1fr);gap:0;margin:0 0 18px;display:grid;overflow:hidden}.dash>div{border-left:1px solid var(--line-soft);min-width:0;padding:16px 18px}.dash>div:first-child{border-left:0}.dash dt{font-family:var(--font-mono);letter-spacing:.16em;color:var(--gold-400);font-size:.68rem}.dash dt .muted{font-family:var(--font-sans);letter-spacing:0;margin-left:4px}.dash dd{margin:0}.dash dd.display,.dash dd .display{font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.15}.dash-port dd.display{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.6rem,2.8vw,2.6rem);overflow:hidden}.dash-note{font-size:.7rem}.hold-bar{background:#f4ecd91a;border-radius:3px;height:6px;margin-top:6px;display:block;overflow:hidden}.hold-bar span{background:linear-gradient(90deg, var(--sea-400), var(--gold-400));height:100%;transition:width .4s;display:block}.trade-error{border:1px solid var(--danger);color:#ffd2ca;background:#ff9a8a1a;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;display:flex}.trade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px;display:flex}.panel-head p{font-size:.8rem}.market{margin:0;padding:0;list-style:none}.market-row{border-top:1px solid var(--line-soft);grid-template-columns:44px minmax(0,1fr) 84px auto;align-items:center;gap:10px;padding:10px 0;display:grid}.mr-good{flex-direction:column;gap:4px;min-width:0;display:flex}.mr-name{color:var(--ink);font-weight:600;text-decoration:none}.mr-name:hover{text-decoration:underline}.mr-meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:.75rem;display:flex}.mr-meta .cat-badge{font-size:.62rem}.mr-meta .cat-badge .cat-icon{width:16px;height:16px}.mr-price{flex-direction:column;align-items:flex-end;font-size:1.05rem;display:flex}.mr-price .muted{letter-spacing:.12em;font-size:.62rem}.pl{font-size:.75rem}.pl.up{color:var(--success)}.pl.down{color:var(--danger)}.market-row>.gi{border-radius:10px;width:44px;height:44px}.sp-thumbs{gap:4px;margin:4px 0;display:flex}.sp-thumbs svg{border-radius:8px;width:38px;height:38px}.mr-actions{align-items:center;gap:6px;display:flex}.input.qty{text-align:right;width:70px;min-height:36px;padding:0 8px}.empty-cargo{padding:20px 0}.sail-list{max-height:460px;margin:0;padding:0;list-style:none;overflow:auto}.sail-list li{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;display:flex}.sl-name{font-weight:600}.sl-visited{color:var(--success)}.sl-meta{letter-spacing:.04em;font-size:.7rem;display:block}.trade-log{max-height:400px;margin:0;padding:0;font-size:.86rem;list-style:none;overflow:auto}.trade-log li{border-top:1px solid var(--line-soft);padding:7px 0}.log-day{min-width:70px;color:var(--gold-400);font-size:.7rem;display:inline-block}.trade-log .log-sell{color:var(--ink)}.trade-log .log-sail{color:var(--sea-300)}.reset-btn{margin-top:14px}.compare-pick{margin-bottom:22px}.pick-results{margin:12px 0 0;padding:0;list-style:none}.pick-results li{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.compare-scroll{border-radius:var(--radius);border:1px solid var(--line);position:relative;overflow-x:auto}.compare-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:720px}.compare-table th,.compare-table td{vertical-align:top;border-top:1px solid var(--line-soft);text-align:left;padding:14px 16px}.compare-table thead th,.compare-table thead td{border-top:0}.compare-table tbody th{letter-spacing:.12em;width:160px;color:var(--gold-400);font-size:.72rem;font-weight:500}.compare-table thead td{width:160px}.cmp-head{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.cmp-visual{aspect-ratio:16/9;border:1px solid var(--line-soft);border-radius:10px;width:100%;overflow:hidden}.cmp-name{color:var(--ink);font-size:1.35rem;line-height:1.15;text-decoration:none}.cmp-why{font-size:.92rem}.compare-foot{flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:14px;display:flex}.compare-foot code{word-break:break-all}.discover-head{text-align:center}.discover-head .lead{margin-left:auto;margin-right:auto}.discover-stage{flex-direction:column;align-items:center;gap:14px;display:flex}.surprise{aspect-ratio:1;cursor:pointer;background:radial-gradient(circle at 35% 30%, #fff6d6, var(--gold-400) 45%, var(--gold-600) 100%);width:clamp(180px,26vw,240px);color:var(--navy-950);border:0;border-radius:50%;transition:transform .2s;position:relative;box-shadow:0 0 0 10px #d4a8451f,0 0 0 22px #d4a8450f,0 24px 60px -16px #d4a84599}.surprise:hover{transform:scale(1.04)rotate(-2deg)}.surprise:active{transform:scale(.97)}.surprise-ring{border:2px dashed #08131f73;border-radius:50%;position:absolute;inset:10px}.surprise.spinning .surprise-ring{animation:.65s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.surprise-text{letter-spacing:.14em;flex-direction:column;align-items:center;gap:4px;font-size:clamp(1rem,1.8vw,1.25rem);font-weight:600;display:flex;position:relative}.surprise-sub{letter-spacing:.04em;font-size:.85rem;font-weight:800}.discover-result{width:100%;margin-top:18px}.find-card{grid-template-columns:minmax(200px,.8fr) 1.4fr;animation:.5s cubic-bezier(.2,1.4,.4,1) both pop;display:grid;overflow:hidden}@keyframes pop{0%{opacity:0;transform:scale(.94)translateY(12px)}}.find-visual{min-height:300px}.find-visual svg{width:100%;height:100%}.find-what{font-size:1.1rem;font-weight:700}.find-body{flex-direction:column;align-items:flex-start;gap:10px;padding:clamp(22px,3vw,40px);display:flex}.find-body h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1}.find-region{grid-column:1/-1}.find-short{font-size:1.1rem}.find-note{border-left:3px solid var(--gold-600);background:#a9832f14;border-radius:0 8px 8px 0;padding:12px 14px}.find-goods{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.find-good{text-align:center;flex-direction:column;align-items:center;gap:4px;width:110px;font-size:.85rem;font-weight:700;line-height:1.3;text-decoration:none;display:flex}.find-good svg{border:1px solid var(--paper-line);border-radius:14px;width:96px;height:96px}.about-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:32px;display:grid}.about-section{margin-bottom:30px}.about-section p{max-width:72ch;color:var(--ink-muted);margin-bottom:10px}.about-stats dl{grid-template-columns:1fr 1fr;gap:14px;margin:10px 0 0;display:grid}.about-stats dt{font-family:var(--font-mono);letter-spacing:.14em;color:var(--ink-faint);font-size:.66rem}.about-stats dd{margin:0;font-size:2rem}.kind-list{margin:8px 0 0;padding:0;font-size:.8rem;list-style:none}.kind-list li{border-top:1px solid var(--line-soft);justify-content:space-between;padding:4px 0;display:flex}.not-found{padding:clamp(60px, 12vw, 160px) var(--gutter)}.not-found .display{margin:10px 0;font-size:clamp(2.4rem,6vw,5rem)}@media (width>=1700px){.hero-title{font-size:6.6rem}}@media (width<=1200px){.dash{grid-template-columns:repeat(3,1fr)}.dash>div:nth-child(4){border-left:0}.dash>div:nth-child(n+4){border-top:1px solid var(--line-soft)}.route-viewer{grid-template-columns:minmax(0,1fr) 280px}.product-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.product-sections .geo-card{grid-column:1/-1}}@media (width<=980px){.hero,.entries{grid-template-columns:1fr}.entry{min-height:0}.today-wrap,.explore-grid{grid-template-columns:1fr}.region-list{max-height:none;overflow:visible}.region-list-head{position:static}.sail-list,.trade-log{max-height:none;overflow:visible}.region-top,.product-top{grid-template-columns:1fr}.product-visual-frame{max-width:520px;margin:0 auto;position:relative;top:0}.why-here,.route-viewer{grid-template-columns:1fr}.route-stops{max-height:none}.trade-start,.trade-grid,.about-grid{grid-template-columns:1fr}.goods-search{grid-template-columns:1fr 1fr}.goods-search .grow{grid-column:1/-1}}@media (width<=700px){.today,.find-card{grid-template-columns:1fr}.today-visual,.find-visual{aspect-ratio:16/10;min-height:0}.product-sections,.facts-product{grid-template-columns:1fr}.facts-product .span-2{grid-column:auto}.dash{grid-template-columns:repeat(2,1fr)}.dash>div{border-top:1px solid var(--line-soft);border-left:0!important}.dash>div:nth-child(2n){border-left:1px solid var(--line-soft)!important}.dash-port{grid-column:1/-1;border-top:0!important}.dash>div:nth-child(2){border-left:0!important}.dash>div:nth-child(3){border-left:1px solid var(--line-soft)!important}.dash>div:nth-child(4){border-left:0!important}.dash>div:nth-child(5){border-left:1px solid var(--line-soft)!important}.dash>div:nth-child(6){border-left:0!important}.market-row{grid-template-columns:44px minmax(0,1fr) auto}.mr-actions{grid-column:1/-1;justify-content:flex-end}.goods-search{grid-template-columns:1fr}.why-here:before{font-size:12rem;bottom:-40px}}.related-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr))}@media (width<=700px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gt-body{gap:4px;padding:10px 10px 12px}.gt-name{font-size:.98rem}.gt-where{font-size:.72rem}.gt-note{font-size:.8rem}.hero-ctas .btn-big{width:100%}.howto-steps{flex-direction:column}.entry-art{max-height:130px}.surprise-mini{width:140px;height:140px}}.en-sub{font-family:var(--font-mono);letter-spacing:.18em;color:var(--ink-faint);margin-top:2px;font-size:.72rem;display:block}.kid-head .en-sub{margin:-4px 0 6px}.paper .en-sub{color:var(--paper-muted)}.term-row{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:14px;font-size:.9rem;display:flex}.term-row-label{color:var(--ink-muted);font-size:.82rem}.term{display:inline-block;position:relative}.term summary{border:1px dashed var(--line);cursor:pointer;border-radius:999px;align-items:center;gap:4px;min-height:32px;padding:2px 4px 2px 10px;font-weight:600;list-style:none;display:inline-flex}.term summary::-webkit-details-marker{display:none}.term-q{background:var(--gold-400);width:22px;height:22px;color:var(--navy-950);border-radius:50%;place-items:center;font-size:.78rem;font-weight:800;display:inline-grid}.term[open] summary{border-style:solid;border-color:var(--gold-400)}.term-pop{z-index:20;background:var(--ivory-50);width:max-content;max-width:min(300px,80vw);color:var(--paper-ink);border-radius:10px;padding:10px 12px;font-size:.88rem;line-height:1.6;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 14px 30px -12px #0009}.route-legend{flex-wrap:wrap;gap:8px 22px;margin-top:10px;font-size:.9rem;font-weight:600;display:flex}.route-legend-item{align-items:center;gap:8px;display:inline-flex}.age-page .route-legend{color:var(--paper-ink)}.surprise-mini-main{text-align:center;padding:0 14px;font-size:1rem;font-weight:800;line-height:1.3}.voyage-plan{margin-top:14px;padding:clamp(18px,3vw,28px)}.voyage-plan-title{font-size:clamp(1.3rem,2.6vw,1.8rem);font-weight:800}.voyage-plan-facts{flex-wrap:wrap;gap:10px 28px;margin:12px 0 0;display:flex}.voyage-plan-facts dt{color:var(--paper-muted);font-size:.8rem;font-weight:700}.voyage-plan-facts dd{margin:0;font-size:1.25rem;font-weight:800}.voyage-plan-via-label{color:var(--paper-muted);margin-top:14px;font-size:.8rem;font-weight:700}.voyage-plan-via{flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 0;padding:0;list-style:none;display:flex}.voyage-plan-via li{background:#2f6f9f1f;border:1px solid #2f6f9f59;border-radius:999px;padding:4px 12px;font-weight:700}.voyage-plan-via li+li:before{content:"→";color:var(--paper-muted);margin:0 8px 0 -2px;font-weight:400}.voyage-plan-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.voyage-plan-warn{color:#b3261e;font-weight:700}.voyage-hint{margin-top:10px;font-size:.92rem}.voyage-status{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(90deg,#2f6f9f47,#10223899);align-items:center;gap:12px;margin-top:12px;padding:12px 16px;display:flex}.voyage-status-ship{font-size:1.6rem;animation:1.6s ease-in-out infinite alternate rock}@keyframes rock{0%{transform:rotate(-6deg)translateY(1px)}to{transform:rotate(6deg)translateY(-1px)}}.voyage-status-to{color:var(--ink-muted);font-size:.82rem;display:block}.voyage-status-where{font-size:1.1rem}.voyage-arrived{border-radius:var(--radius);background:linear-gradient(180deg, var(--gold-300), var(--gold-500));color:var(--navy-950);text-align:center;margin-top:12px;padding:12px 16px;font-size:1.15rem;font-weight:800;animation:.5s cubic-bezier(.2,1.4,.4,1) both pop}@media (width<=700px){.voyage-plan-actions .btn-big{flex:100%}.voyage-status-where{font-size:1rem}}.trade-game [class]>.map-shell,.trade-map-anchor{scroll-margin-top:calc(var(--header-h) + 12px)}.paper .btn:not(.btn-gold){color:var(--paper-ink);border-color:#18263859}.paper .btn:not(.btn-gold):hover{color:var(--navy-950);background:#1826380f}html[lang=ja] .eyebrow{font-family:var(--font-sans);letter-spacing:.06em;font-weight:700}.more-detail{border:1px dashed var(--line);border-radius:10px;margin-top:12px;padding:4px 14px}.more-detail summary{cursor:pointer;align-items:center;gap:8px;min-height:40px;font-weight:700;list-style:none;display:flex}.more-detail summary::-webkit-details-marker{display:none}.more-detail summary:before{content:"▸";transition:transform .2s}.more-detail[open] summary:before{transform:rotate(90deg)}.more-detail[open]{padding-bottom:12px}.more-detail>p{font-size:.95rem;line-height:1.85}.more-detail-label{opacity:.75;font-weight:700;font-size:.78rem!important}.paper .more-detail{border-color:var(--paper-line)}.what-point{background:#d4a84529;border-radius:10px;margin-top:10px;padding:10px 12px;line-height:1.75}.what-point strong{color:var(--gold-700);font-size:.8rem;display:block}.history-simple{line-height:1.85}.trade-simple{margin:-6px 0 18px;font-size:1.02rem;line-height:1.8}.age-intro{border-radius:var(--radius);color:#2c220f;background:#ffffff8c;border:1px solid #7d5f1d59;max-width:820px;margin-top:18px;padding:18px 22px}.age-intro h2{margin-bottom:6px;font-size:1.15rem}.age-intro p{line-height:1.9}.age-intro .term-row-label{color:#4a3a1c}html[lang=ja] .why-label h2{font-family:var(--font-sans);font-size:clamp(1.7rem,3.2vw,2.6rem);font-weight:800;line-height:1.3}html[lang=ja] .why-text{font-size:clamp(1.05rem,1.5vw,1.2rem)}.mr-price-label{font-size:.72rem}.mr-price .pl{letter-spacing:0;white-space:nowrap;font-size:.8rem;font-weight:700}.mr-go{white-space:nowrap;font-weight:800}.voyage-arrived-title{display:block}.voyage-arrived-hint{margin-top:4px;font-size:1rem;font-weight:700;display:block}.trade-result{border-radius:var(--radius);text-align:center;border:2px solid;margin:12px 0 0;padding:12px 16px;font-size:1.1rem;font-weight:800;animation:.5s cubic-bezier(.2,1.4,.4,1) both pop}.trade-result.up{color:var(--success);background:#3caa6e1f}.trade-result.down{color:var(--danger);background:#c83c3c1a}@media (prefers-reduced-motion:reduce){.trade-result{animation:none}}.market{container-type:inline-size}@container (width<=560px){.market-row{grid-template-columns:44px minmax(0,1fr) auto}.mr-actions{grid-column:1/-1;justify-content:flex-end}}.product-sections-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=900px){.product-sections-2{grid-template-columns:1fr}}.what-region{white-space:nowrap;align-items:center;gap:4px;min-height:32px;font-weight:700;display:inline-flex}.what-region svg{width:14px;height:14px}.product-next{margin-top:22px}.more-about{margin:10px 0 14px}.more-about p{margin:0 0 10px}.facts-place{margin-bottom:14px}@media (width<=600px){.grid-goods{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.good-card .gc-visual{aspect-ratio:4/3}.good-card .gc-kind{padding:1px 8px;font-size:.68rem;top:6px;left:6px}.good-card .gc-body{gap:5px;padding:10px 10px 12px}.good-card h3{font-size:1.02rem}.good-card .gc-what{font-size:.84rem;line-height:1.5}.good-card .gc-where{align-items:flex-start;font-size:.76rem}.good-card .gc-where svg{flex:none;margin-top:2px}}.age-hook{color:#2c220f;margin:0 0 10px;font-size:clamp(1.25rem,2.6vw,1.6rem);font-weight:800;line-height:1.5}.age-points{gap:8px;margin:8px 0 10px;padding:0;list-style:none;display:grid}.age-points li{background:#fff9;border-radius:10px;grid-template-columns:1.8em minmax(0,1fr);gap:6px;padding:10px 12px;line-height:1.8;display:grid}.age-points .age-point-dark{background:#8c2f1b14;border-left:4px solid #8c2f1b}.sail-list,.trade-log{max-height:none;overflow:visible}.sail-list .btn{white-space:nowrap;flex:none}.sl-meta{font-family:var(--font-sans);letter-spacing:0;font-size:.8rem}.more-btn{margin-top:10px}.card .trade-result{margin:4px 0 10px;font-size:1rem}.route-stops{max-height:none;overflow:visible}.tools-toggle{display:none}@media (width<=600px){.goods-tools .tools-toggle{align-self:flex-start;display:inline-flex}.goods-tools:not(.tools-open) .goods-extra{display:none}}.mr-owned{color:var(--gold-300);font-weight:700}.what-where{flex-wrap:wrap}@media (width<=600px){.what-region{flex-basis:100%;padding-left:20px}}.age-jump{margin:14px 0 0}.age-page #chart-title,.age-page #tl-title,.age-page #aoe-goods-title{scroll-margin-top:90px}.age-more{margin-top:16px}
