:root{color-scheme:light dark;--color-ink: #17324d;--color-ink-soft: #496172;--color-muted: #6a7b85;--color-border: #d8e2df;--color-paper: #ffffff;--color-mist: #f5f8f7;--color-surface: #ffffff;--color-surface-elevated: #fbfdfc;--color-surface-highlight: rgb(255 255 255 / 84%);--color-field: #ffffff;--color-header: rgb(255 255 255 / 94%);--color-primary: #17324d;--color-primary-ink: #ffffff;--color-link: #246b8f;--color-blue: #7fa7c7;--color-green: #7fb39c;--color-vermilion: #e15f3f;--hero-overlay: linear-gradient(90deg, rgb(255 255 255 / 96%) 0%, rgb(255 255 255 / 86%) 58%, rgb(255 255 255 / 56%) 100%);--shadow-soft: 0 18px 48px rgb(23 50 77 / 10%);--shadow-compact: 0 8px 22px rgb(23 50 77 / 12%);--radius: 8px;--container: 1120px}html[data-theme=dark]{color-scheme:dark;--color-ink: #eaf4ef;--color-ink-soft: #bed0ca;--color-muted: #94a9a2;--color-border: #2f4541;--color-paper: #101819;--color-mist: #172323;--color-surface: #142021;--color-surface-elevated: #192829;--color-surface-highlight: rgb(255 255 255 / 7%);--color-field: #101b1c;--color-header: rgb(13 21 22 / 90%);--color-primary: #e4f1ed;--color-primary-ink: #101819;--color-link: #8bd2e7;--color-blue: #91bad8;--color-green: #93d2b7;--color-vermilion: #ff8a67;--hero-overlay: linear-gradient(90deg, rgb(16 24 25 / 98%) 0%, rgb(16 24 25 / 88%) 58%, rgb(16 24 25 / 66%) 100%);--shadow-soft: 0 20px 56px rgb(0 0 0 / 28%);--shadow-compact: 0 10px 24px rgb(0 0 0 / 22%)}@media(prefers-color-scheme:dark){html:not([data-theme]){color-scheme:dark;--color-ink: #eaf4ef;--color-ink-soft: #bed0ca;--color-muted: #94a9a2;--color-border: #2f4541;--color-paper: #101819;--color-mist: #172323;--color-surface: #142021;--color-surface-elevated: #192829;--color-surface-highlight: rgb(255 255 255 / 7%);--color-field: #101b1c;--color-header: rgb(13 21 22 / 90%);--color-primary: #e4f1ed;--color-primary-ink: #101819;--color-link: #8bd2e7;--color-blue: #91bad8;--color-green: #93d2b7;--color-vermilion: #ff8a67;--hero-overlay: linear-gradient(90deg, rgb(16 24 25 / 98%) 0%, rgb(16 24 25 / 88%) 58%, rgb(16 24 25 / 66%) 100%);--shadow-soft: 0 20px 56px rgb(0 0 0 / 28%);--shadow-compact: 0 10px 24px rgb(0 0 0 / 22%)}}*{box-sizing:border-box}html{font-family:Avenir Next,Hiragino Sans,Noto Sans TC,Noto Sans JP,Noto Sans KR,system-ui,sans-serif;background:var(--color-paper);color:var(--color-ink);line-height:1.6;letter-spacing:0}body{margin:0;min-width:320px;background:var(--color-paper);color:var(--color-ink)}a{color:inherit}:focus-visible{outline:3px solid var(--color-vermilion);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::selection{background:color-mix(in srgb,var(--color-green) 34%,transparent)}img,svg{max-width:100%}button,input,select,textarea{font:inherit}.site-main{min-height:68vh}.skip-link{position:fixed;top:12px;left:16px;z-index:100;transform:translateY(-140%);border-radius:var(--radius);background:var(--color-primary);color:var(--color-primary-ink);font-weight:800;padding:10px 14px;text-decoration:none;transition:transform .16s ease}.skip-link:focus-visible{transform:translateY(0)}.container{width:min(100% - 32px,var(--container));margin:0 auto}.narrow{width:min(100% - 32px,760px);margin:0 auto}.site-header{position:sticky;top:0;z-index:10;background:var(--color-header);border-bottom:1px solid var(--color-border);backdrop-filter:blur(18px)}.header-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:14px 0}.brand-link{display:inline-flex;align-items:center;gap:10px;width:max-content;text-decoration:none;font-weight:800}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--color-primary);color:var(--color-primary-ink);font-weight:900}.brand-subtitle{display:block;color:var(--color-muted);font-size:.76rem;font-weight:600}.header-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;min-width:0;max-width:100%}.header-nav a,.control-menu a,.button-link,.text-link{text-decoration:none}.header-nav a,.control-menu a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0;min-height:36px;padding:6px 10px;border-radius:var(--radius);color:var(--color-ink-soft);font-size:.92rem;font-weight:700}.header-nav a:hover,.control-menu a:hover,.header-nav a[aria-current=page],.control-menu a[aria-current=true]{background:var(--color-mist);color:var(--color-ink)}.header-tools{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap;width:100%;min-width:0;max-width:100%}.header-tools>*{flex:0 0 auto}.control-disclosure{position:relative;width:max-content}.control-summary{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:5px 12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-ink);cursor:pointer;font-size:.88rem;font-weight:900;box-shadow:inset 0 1px 0 var(--color-surface-highlight);list-style:none}.control-summary-icon-only{position:relative;justify-content:center;width:44px;min-width:44px;padding:5px}.control-summary-compact{justify-content:center;min-width:74px;padding:5px 10px}.control-summary::-webkit-details-marker{display:none}.control-summary:after{content:"";width:.45rem;height:.45rem;border-right:2px solid var(--color-muted);border-bottom:2px solid var(--color-muted);transform:rotate(45deg) translateY(-1px);transition:transform .16s ease}details[open].control-disclosure .control-summary{border-color:var(--color-green);box-shadow:var(--shadow-compact)}details[open].control-disclosure .control-summary:after{transform:rotate(225deg) translate(-1px,-1px)}.control-summary-icon-only:after{position:absolute;right:6px;bottom:7px;width:.32rem;height:.32rem;border-width:1.5px}.control-summary-label{color:var(--color-muted);font-size:.72rem;letter-spacing:0}.theme-toggle .control-summary-compact{gap:7px}.control-icon{display:block;flex:0 0 auto;width:1rem;height:1rem;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.control-summary strong{white-space:nowrap}.theme-toggle .control-summary strong{min-width:2.1em;text-align:left}.control-menu{position:absolute;top:calc(100% + 8px);z-index:30;display:grid;gap:4px;min-width:168px;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-soft)}.locale-switcher .control-menu{left:0}.locale-switcher .control-summary-icon-only{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 38%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 9%,var(--color-surface))}.locale-icon-stack{display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.locale-switcher .control-icon{width:1.28rem;height:1.28rem;stroke-width:2.25}.theme-toggle .control-menu{right:0}.theme-toggle-option{display:inline-flex;align-items:center;justify-content:space-between;min-height:36px;width:100%;padding:6px 10px;border:0;border-radius:var(--radius);background:transparent;color:var(--color-ink-soft);cursor:pointer;font-size:.92rem;font-weight:900}.theme-toggle-option:hover{color:var(--color-ink)}.theme-toggle-option[aria-pressed=true]{background:var(--color-primary);color:var(--color-primary-ink)}.site-footer{margin-top:72px;padding:36px 0;border-top:1px solid var(--color-border);background:var(--color-mist);color:var(--color-ink-soft)}.footer-inner{display:grid;gap:18px}.footer-links{display:flex;gap:14px;flex-wrap:wrap}.hero{position:relative;overflow:hidden;padding:64px 0 42px;background:var(--hero-overlay),url(/images/life-map.svg) center / cover no-repeat;border-bottom:1px solid var(--color-border)}.hero-grid{display:grid;gap:28px}.hero h1,.page-hero h1,.article-header h1{margin:0;max-width:820px;font-size:clamp(2.2rem,8vw,5rem);line-height:1.05;letter-spacing:0}.hero p,.page-hero p{max-width:680px;margin:18px 0 0;color:var(--color-ink-soft);font-size:clamp(1.04rem,2.4vw,1.25rem)}.hero-actions,.inline-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button-link,.button-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--color-primary);border-radius:var(--radius);font-weight:800}.button-link{background:var(--color-primary);color:var(--color-primary-ink)}.button-secondary{background:var(--color-surface);color:var(--color-ink)}.decision-note{display:block;max-width:520px;margin-top:28px;padding-left:14px;border-left:4px solid var(--color-vermilion);color:var(--color-ink-soft);font-weight:700}.section{padding:44px 0}.section-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.section-header h2,.page-hero h1{margin:0}.section-header p{max-width:620px;margin:8px 0 0;color:var(--color-muted)}.grid{display:grid;gap:16px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.card,.category-card,.place-card,.mobile-card,.notice,.form-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:inset 0 1px 0 var(--color-surface-highlight)}.category-card,.place-card,.mobile-card,.notice{padding:20px}.category-card{display:grid;min-height:176px;color:var(--color-ink);text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.category-card:hover{transform:translateY(-2px);border-color:var(--color-green);background:var(--color-surface-elevated);box-shadow:var(--shadow-soft)}.category-card h3,.place-card h3,.mobile-card h3{margin:0 0 8px;font-size:1.16rem}.mobile-card{display:grid;gap:12px}.place-card h3 a{text-decoration:none}.category-card p,.place-card p,.mobile-card p,.notice p{margin:0;color:var(--color-ink-soft)}.content-stack{display:grid;gap:10px;margin-top:16px}.not-found-intro-list{display:grid;gap:10px;max-width:760px;margin-top:22px}.not-found-intro-list p{margin:0;color:var(--color-ink-soft)}.not-found-intro-list strong{color:var(--color-ink)}.not-found-intro-list-compact{margin-top:10px}.check-list{display:grid;gap:10px;margin:0;padding-left:20px;color:var(--color-ink-soft)}.check-list li::marker{color:var(--color-vermilion)}.tool-section{display:grid;gap:16px}.tool-checklist{display:grid;gap:12px;list-style:none;margin:0;padding:0}.tool-checklist label{align-items:start;display:grid;gap:10px;grid-template-columns:20px 1fr}.tool-checklist input{accent-color:var(--color-green);margin-top:5px}.area-card{display:grid;gap:14px}.search-section{padding-top:28px}.search-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:inset 0 1px 0 var(--color-surface-highlight);padding:18px;margin-bottom:20px}.search-panel input{font-size:1.05rem}.search-form-row{align-items:stretch;display:grid;gap:10px;grid-template-columns:1fr}.search-results{display:grid;gap:14px}.search-result-card{display:grid;gap:10px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:18px}.search-result-card h2{margin:0;font-size:1.18rem}.search-result-card h2 a{text-decoration:none}.search-result-card p{margin:0;color:var(--color-ink-soft)}.search-result-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--color-muted);font-size:.86rem;font-weight:800}.search-result-type{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border:1px solid color-mix(in srgb,var(--color-green) 42%,var(--color-border));border-radius:999px;background:color-mix(in srgb,var(--color-green) 14%,transparent);color:var(--color-ink)}.search-empty,.search-noscript{margin-bottom:18px}.search-empty{display:grid;gap:10px}.search-empty[hidden]{display:none}.search-empty p{margin:0}.search-empty-actions{display:flex;flex-wrap:wrap;gap:10px}.card-arrow{align-self:end;justify-self:end;color:var(--color-vermilion);font-weight:900}.article-list{display:grid;gap:14px}.article-row{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid var(--color-border)}.article-row,.article-row a{text-decoration:none}.article-row h3{margin:0;font-size:1.14rem}.article-meta{color:var(--color-muted);font-size:.9rem;font-weight:700}.article-meta-link{color:var(--color-ink-soft);text-decoration-color:var(--color-green);text-underline-offset:3px}.article-index-section{padding-top:18px}.category-link-list{display:flex;gap:10px;flex-wrap:wrap}.category-link-list a{display:inline-flex;align-items:center;gap:8px;min-height:42px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:8px 12px;color:var(--color-ink);font-weight:800;text-decoration:none}.category-link-list strong{display:inline-grid;min-width:24px;min-height:24px;place-items:center;border-radius:999px;background:var(--color-mist);color:var(--color-ink-soft);font-size:.8rem}.breadcrumbs{color:var(--color-muted);font-size:.86rem;font-weight:800;margin-bottom:14px}.breadcrumbs ol{align-items:center;display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}.breadcrumbs li{align-items:center;display:inline-flex;min-width:0}.breadcrumbs li+li:before{color:var(--color-border);content:"/";margin:0 8px 0 4px}.breadcrumbs a{color:var(--color-ink-soft);text-decoration-color:var(--color-green);text-underline-offset:3px}.breadcrumbs span[aria-current=page]{color:var(--color-muted)}.page-hero{padding:50px 0 24px;background:var(--color-mist);border-bottom:1px solid var(--color-border)}.article-shell{padding:48px 0}.article-header{margin-bottom:32px}.article-trust-notice{border-left:4px solid var(--color-green);background:var(--color-mist);color:var(--color-ink-soft);display:grid;gap:6px;margin:0 0 28px;padding:14px 16px}.article-trust-notice strong{color:var(--color-ink)}.article-trust-notice p{margin:0}.article-source-links{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius);display:grid;gap:14px;margin:0 0 30px;padding:18px}.article-source-links h2,.article-source-links p{margin:0}.article-source-links h2{font-size:1rem}.article-source-links p{color:var(--color-muted);font-size:.92rem}.article-source-links ul{display:grid;gap:10px;list-style:none;margin:0;padding:0}.article-source-links li{display:grid;gap:3px}.article-source-links a{color:var(--color-link);font-weight:800;text-decoration-color:var(--color-green);text-underline-offset:3px}.article-source-links span{color:var(--color-muted);font-size:.92rem}.article-toc{background:var(--color-mist);border:1px solid var(--color-border);border-radius:var(--radius);display:grid;gap:14px;margin:0 0 32px;padding:18px}.article-toc h2,.article-toc p{margin:0}.article-toc h2{font-size:1rem}.article-toc p{color:var(--color-muted);font-size:.92rem}.article-toc ol{display:grid;gap:8px;margin:0;padding-left:20px}.article-toc li{color:var(--color-muted);padding-left:2px}.article-toc .toc-depth-3{margin-left:14px}.article-toc a{color:var(--color-ink-soft);font-weight:800;text-decoration-color:var(--color-green);text-underline-offset:3px}.article-body{color:var(--color-ink-soft);font-size:1.08rem}.article-body h2{margin-top:34px;color:var(--color-ink)}.article-body p,.article-body li{line-height:1.82}.article-body a{color:var(--color-link);font-weight:700}.related-articles{border-top:1px solid var(--color-border);margin-top:40px;padding-top:28px}.related-articles h2{margin-bottom:8px}.related-article-list{display:grid;gap:12px;margin-top:18px}.related-article-card{border:1px solid var(--color-border);border-radius:8px;color:inherit;display:grid;gap:8px;padding:16px;text-decoration:none}.related-article-card:hover{border-color:var(--color-green);background:var(--color-surface-elevated);box-shadow:var(--shadow-compact)}.related-article-card span{color:var(--color-muted)}.correction-prompt{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-green);border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-top:32px;padding:18px}.correction-prompt h2{font-size:1.08rem;margin:0 0 4px}.correction-prompt p{color:var(--color-ink-soft);margin:0}.tag-list,.facts,.place-tags{display:flex;gap:8px;flex-wrap:wrap;margin:0;padding:0;list-style:none}.tag-list li,.facts span,.place-tags span{display:inline-flex;align-items:center;min-height:30px;padding:4px 9px;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-ink-soft);font-size:.86rem;font-weight:700}.favorite-placeholder{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;border:1px dashed var(--color-green);border-radius:var(--radius);background:color-mix(in srgb,var(--color-green) 12%,var(--color-surface));color:var(--color-ink);font-weight:800;cursor:not-allowed}.form-panel{padding:22px}.form-grid{display:grid;gap:16px}.field{display:grid;gap:6px}.field label{color:var(--color-ink);font-weight:800}.field input,.field select,.field textarea{width:100%;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 12px;background:var(--color-field);color:var(--color-ink)}.field textarea{min-height:128px;resize:vertical}.help-text{color:var(--color-muted);font-size:.92rem}.detail-list{display:grid;grid-template-columns:minmax(110px,.42fr) 1fr;gap:10px 18px;margin:0}.detail-list dt{color:var(--color-muted);font-weight:800}.detail-list dd{margin:0;color:var(--color-ink)}.compact-list{grid-template-columns:minmax(88px,.34fr) 1fr}.submit-disabled{opacity:.68}.honeypot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(min-width:760px){.header-inner{grid-template-columns:auto 1fr auto;align-items:center}.header-nav{display:flex;justify-content:center;width:auto}.header-nav a{justify-content:flex-start}.header-tools{justify-content:flex-end;width:auto}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-form-row{grid-template-columns:minmax(0,1fr) auto}.field-full{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
