:root{--bg:#f8f7f2;--surface:#fefdfb;--ink:#1e2a23;--muted:#586059;--line:#dedfd6;--accent:#216744;--accent-ink:#f7fef9;--accent-soft:#dbf2e4;--band:#123927;--band-ink:#f0f3ea;--band-muted:#b4c3b1;--tint-sage:#d8eadd;--tint-sand:#f1e7d2;--tint-sky:#d7e8f1;--tint-clay:#f6dbcd;--grid:#20332912;--danger:#b6322b;--scrim:#0e191373;--shadow:0 1px 2px #2033290f, 0 10px 28px #20332917;--font:"IBM Plex Sans Thai", "Noto Sans Thai", "Leelawadee UI", Tahoma, system-ui, sans-serif;--step-1:1.2rem;--step-2:1.5rem;--step-3:clamp(1.6rem, 1.15rem + 2vw, 2.2rem);--step-4:clamp(2rem, 1.25rem + 3.2vw, 3.2rem);--radius:14px}@supports (color:lab(0% 0 0)){:root{--bg:lab(97.1437% -.219584 2.66086);--surface:lab(99.439% -.097543 1.13807);--ink:lab(15.5891% -6.47454 2.56584);--muted:lab(39.8808% -4.4363 2.82907);--line:lab(88.5089% -1.3991 4.30293);--accent:lab(38.5434% -29.4483 12.9663);--accent-ink:lab(98.976% -3.15785 1.39724);--accent-soft:lab(93.4464% -9.50715 4.20426);--band:lab(20.6884% -18.2053 7.16708);--band-ink:lab(95.4885% -2.04816 3.95446);--band-muted:lab(77.1827% -7.82159 7.33893);--tint-sage:lab(91.0583% -7.73796 3.96372);--tint-sand:lab(91.9893% 1.05032 11.5776);--tint-sky:lab(90.8031% -4.61414 -6.39889);--tint-clay:lab(89.4063% 7.77218 10.4593);--grid:lab(19.202% -9.76221 3.86272/.07);--danger:lab(42.6627% 53.1093 37.3843);--scrim:lab(7.47972% -5.83105 2.30886/.45);--shadow:0 1px 2px lab(19.202% -9.76221 3.86272/.06), 0 10px 28px lab(19.202% -9.76221 3.86272/.09)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1612;--surface:#18201c;--ink:#ebece4;--muted:#a8ada3;--line:#2f3833;--accent:#76cd9c;--accent-ink:#091a11;--accent-soft:#183525;--band:#0f2d1f;--band-ink:#edf0e7;--band-muted:#aebcaa;--tint-sage:#24352a;--tint-sand:#3b3121;--tint-sky:#1f303b;--tint-clay:#3f2b21;--grid:#ffffff0d;--shadow:0 1px 2px #0000004d, 0 10px 28px #00000059;--danger:#f68678;--scrim:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@supports (color:lab(0% 0 0)){:root:not([data-theme=light]){--bg:lab(6.33311% -3.18485 1.26339);--surface:lab(11.4488% -4.51955 1.7926);--ink:lab(93.1311% -1.17153 3.5814);--muted:lab(70.0189% -3.28091 4.37102);--line:lab(22.4827% -4.82963 1.91711);--accent:lab(75.9405% -35.5688 15.6843);--accent-ink:lab(7.60561% -8.64483 3.41446);--accent-soft:lab(19.3965% -14.5779 6.42669);--band:lab(15.9169% -14.8577 5.85355);--band-ink:lab(94.3284% -2.04799 3.95467);--band-muted:lab(74.8625% -7.82076 7.34098);--tint-sage:lab(20.3594% -9.38194 4.81539);--tint-sand:lab(21.1667% 2.43725 11.9715);--tint-sky:lab(18.8507% -4.9919 -9.08728);--tint-clay:lab(19.7481% 8.89124 10.0726);--grid:lab(100% 0 0/.05);--shadow:0 1px 2px lab(0% 0 0/.3), 0 10px 28px lab(0% 0 0/.35);--danger:lab(68.5409% 43.0002 27.5291);--scrim:lab(0% 0 0/.6)}}}:root[data-theme=dark]{--bg:#0f1612;--surface:#18201c;--ink:#ebece4;--muted:#a8ada3;--line:#2f3833;--accent:#76cd9c;--accent-ink:#091a11;--accent-soft:#183525;--band:#0f2d1f;--band-ink:#edf0e7;--band-muted:#aebcaa;--tint-sage:#24352a;--tint-sand:#3b3121;--tint-sky:#1f303b;--tint-clay:#3f2b21;--grid:#ffffff0d;--shadow:0 1px 2px #0000004d, 0 10px 28px #00000059;--danger:#f68678;--scrim:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@supports (color:lab(0% 0 0)){:root[data-theme=dark]{--bg:lab(6.33311% -3.18485 1.26339);--surface:lab(11.4488% -4.51955 1.7926);--ink:lab(93.1311% -1.17153 3.5814);--muted:lab(70.0189% -3.28091 4.37102);--line:lab(22.4827% -4.82963 1.91711);--accent:lab(75.9405% -35.5688 15.6843);--accent-ink:lab(7.60561% -8.64483 3.41446);--accent-soft:lab(19.3965% -14.5779 6.42669);--band:lab(15.9169% -14.8577 5.85355);--band-ink:lab(94.3284% -2.04799 3.95467);--band-muted:lab(74.8625% -7.82076 7.34098);--tint-sage:lab(20.3594% -9.38194 4.81539);--tint-sand:lab(21.1667% 2.43725 11.9715);--tint-sky:lab(18.8507% -4.9919 -9.08728);--tint-clay:lab(19.7481% 8.89124 10.0726);--grid:lab(100% 0 0/.05);--shadow:0 1px 2px lab(0% 0 0/.3), 0 10px 28px lab(0% 0 0/.35);--danger:lab(68.5409% 43.0002 27.5291);--scrim:lab(0% 0 0/.6)}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:400 1rem/1.75 var(--font);-webkit-font-smoothing:antialiased}html[lang=en] body{line-height:1.65}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);position:fixed;inset:0 0 auto}h1,h2,h3{font-family:var(--font);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:600;line-height:1.35}p{margin:0}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.wrap{max-width:1200px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin-inline:auto}.icon{vertical-align:-.125em;flex:none;width:1em;height:1em}.site-header{top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in oklch, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky}.site-header .wrap{align-items:center;gap:16px;min-height:64px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.brand svg{width:30px;height:30px;color:var(--accent)}.nav{gap:4px;margin-inline:auto;display:flex}.nav button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:6px 12px;font-size:.9375rem}.nav button:hover{color:var(--ink);background:var(--accent-soft)}.nav button[aria-current=true]{color:var(--accent);background:var(--accent-soft);font-weight:600}.lang{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;padding:2px;display:inline-flex}.lang button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px 10px;font-size:.8125rem;font-weight:600}.lang button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.btn{cursor:pointer;background:var(--accent);color:var(--accent-ink);white-space:nowrap;border:0;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.menu-btn{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;padding:8px 10px;display:none}.mobile-nav{border-top:1px solid var(--line)}.mobile-nav .wrap{gap:4px;padding-block:8px 14px;display:grid}.mobile-nav button{text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 4px;font-size:1rem}@media (max-width:920px){.nav,.header-cta{display:none}.lang{margin-left:auto}.menu-btn{display:inline-flex}}.masthead{text-align:center;background:radial-gradient(60rem 22rem at 50% -6rem, var(--accent-soft), transparent 70%);padding-block:56px 40px}.eyebrow{color:var(--accent);letter-spacing:.04em;align-items:center;gap:10px;font-size:.8125rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";opacity:.6;background:currentColor;width:28px;height:1px}.masthead h1{font-size:var(--step-4);margin-top:14px;font-weight:700}.masthead p{color:var(--muted);max-width:40rem;margin:16px auto 0;font-size:1.0625rem}.paper{background-color:var(--tint,var(--tint-sage));background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:24px 24px}.featured{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:1fr 1fr;text-decoration:none;transition:box-shadow .2s;display:grid;overflow:hidden}.featured:hover{box-shadow:var(--shadow)}.featured-art{grid-template-rows:auto 1fr auto;gap:16px;min-height:380px;padding:28px;display:grid;position:relative}.featured-art .kicker{letter-spacing:.08em;color:var(--accent);font-size:.75rem;font-weight:600}.featured-art .stage{align-items:center;padding-right:110px;display:flex;position:relative}.featured-art .glyph{width:120px;height:120px;color:var(--accent);opacity:.4;position:absolute;top:50%;right:0;transform:translateY(-50%)}.stage-text{letter-spacing:-.01em;text-wrap:balance;font-size:clamp(1.8rem,1.15rem + 2.2vw,2.7rem);font-weight:700;line-height:1.25}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:color-mix(in oklch, var(--surface) 80%, transparent);border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:.8125rem}.featured-text{flex-direction:column;justify-content:center;gap:18px;min-width:0;padding:40px;display:flex}.featured-text h2{font-size:var(--step-3);text-wrap:pretty}.featured-text p{color:var(--muted)}.read-more{color:var(--accent);align-items:center;gap:6px;font-weight:600;display:inline-flex}.read-more svg{transition:transform .2s}.featured:hover .read-more svg{transform:translate(3px)}@media (max-width:860px){.featured{grid-template-columns:1fr}.featured-art{min-height:0}.featured-art .stage{padding-right:76px}.featured-art .glyph{width:72px;height:72px}.featured-text{padding:24px}}.pill{background:var(--accent-soft);color:var(--accent);border-radius:999px;place-self:flex-start start;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-block}.meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px 18px;font-size:.8125rem;display:flex}.meta span{align-items:center;gap:6px;display:inline-flex}.library{gap:28px;padding-block:64px 80px;display:grid}.search{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;padding:0 16px;display:flex}.search:focus-within{border-color:var(--accent)}.search input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:14px 0}.search input::placeholder{color:var(--muted)}.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filters .label{color:var(--muted);margin-right:4px;font-size:.875rem}.filter{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;padding:5px 14px;font-size:.875rem}.filter:hover{border-color:var(--accent)}.filter[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.card{min-width:0}.card-link{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;height:100%;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.card-link:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.cover{aspect-ratio:16/10;flex-direction:column;justify-content:flex-end;max-width:100%;padding:20px 22px;display:flex;position:relative;overflow:hidden}.cover .glyph{width:56px;height:56px;color:var(--accent);opacity:.5;transition:transform .35s;position:absolute;top:18px;right:18px}.cover-text{letter-spacing:-.01em;text-wrap:balance;max-width:85%;font-size:clamp(1.3rem,1rem + .9vw,1.6rem);font-weight:700;line-height:1.3}.card-link:hover .cover .glyph{transform:translateY(-3px)rotate(-6deg)}.size{z-index:2;background:color-mix(in oklch, var(--surface) 85%, transparent);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600;position:absolute;top:18px;left:18px}.card-body{flex-direction:column;flex:1;gap:10px;padding:20px 22px 22px;display:flex}.card-title{font-size:var(--step-1);text-wrap:pretty}.card-excerpt{color:var(--muted);font-size:.9375rem;line-height:1.7}.card-body .meta{margin-top:auto;padding-top:8px}.empty{text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);justify-items:center;gap:14px;padding:48px 16px;display:grid}.empty button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:6px 16px}@media (max-width:960px) and (min-width:621px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid>.card:last-child:nth-child(odd){grid-column:1/-1}.grid>.card:last-child:nth-child(odd) .card-link{grid-template-columns:1fr 1fr;display:grid}.grid>.card:last-child:nth-child(odd) .cover{aspect-ratio:auto;height:100%;min-height:220px}}@media (max-width:620px){.grid{grid-template-columns:1fr;gap:20px}}.band{background:var(--band);color:var(--band-ink);padding-block:64px}.band .wrap{grid-template-columns:minmax(0,1.4fr) auto;align-items:center;gap:32px;display:grid}.band h2{font-size:var(--step-3)}.band p{color:var(--band-muted);max-width:36rem;margin-top:10px}.band .btn{background:var(--band-ink);color:var(--band)}@media (max-width:760px){.band{padding-block:48px}.band .wrap{grid-template-columns:1fr}}.site-footer{background:var(--band);color:var(--band-muted);border-top:1px solid color-mix(in oklch, var(--band-ink) 14%, transparent);padding-block:40px;font-size:.9rem}.site-footer .wrap{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:32px;display:grid}.site-footer .brand,.site-footer .brand svg{color:var(--band-ink)}.footer-blurb{max-width:26rem;margin-top:12px}.site-footer h2{color:var(--band-ink);margin-bottom:10px;font-size:.875rem;font-weight:600}.site-footer ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.site-footer button{cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;padding:0}.site-footer button:hover{color:var(--band-ink)}.site-footer .legal{border-top:1px solid color-mix(in oklch, var(--band-ink) 14%, transparent);grid-column:1/-1;padding-top:20px;font-size:.8125rem}@media (max-width:760px){.site-footer .wrap{grid-template-columns:1fr 1fr}.site-footer .about{grid-column:1/-1}}.article-top{padding-block:24px 0}.back{color:var(--muted);align-items:center;gap:8px;font-size:.9375rem;text-decoration:none;display:inline-flex}.back:hover{color:var(--ink)}.article-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:64px;padding-block:32px 80px;display:grid}.article-main{gap:28px;min-width:0;max-width:46rem;display:grid}.article-head{gap:18px;display:grid}.article-head h1{font-size:var(--step-4);font-weight:700}.article-hero{border-radius:18px;padding:32px}.article-hero .cover-text{font-size:var(--step-3)}.article-hero .glyph{width:96px;height:96px;top:28px;right:28px}.summary{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px}.summary h2{color:var(--accent);letter-spacing:0;margin-bottom:8px;font-size:.9375rem}.summary ul{gap:6px;margin:0;padding-left:1.2em;display:grid}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 12px;font-size:.8125rem}.prose{gap:18px;font-size:1.0625rem;line-height:1.85;display:grid}html[lang=en] .prose{line-height:1.75}.prose h2{font-size:var(--step-2);margin-top:22px;scroll-margin-top:96px}.prose ul,.prose ol{gap:8px;margin:0;padding-left:1.4em;display:grid}.prose ol li::marker{color:var(--accent);font-weight:600}.prose a{color:var(--accent);text-underline-offset:3px}.prose strong{font-weight:600}.table-scroll{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%;min-width:560px;font-size:.9375rem;line-height:1.6}.table-scroll th,.table-scroll td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 16px}.table-scroll thead th{background:var(--accent-soft);font-weight:600}.table-scroll tbody th{color:var(--muted);white-space:nowrap;font-weight:500}.table-scroll tr:last-child>*{border-bottom:0}.inline-cta{background:var(--tint-sage);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:24px;display:grid}.inline-cta h3{font-size:var(--step-1)}.inline-cta p{color:var(--muted);margin-top:4px;font-size:.9375rem}@media (max-width:620px){.inline-cta{grid-template-columns:1fr}}.faq{gap:10px;display:grid}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:0 18px}.faq summary{cursor:pointer;justify-content:space-between;gap:16px;padding:14px 0;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--accent);font-size:1.25rem;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--muted);padding-bottom:16px}.notice{border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:24px}.notice a{color:var(--accent)}.author-box{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:48px minmax(0,1fr);align-items:start;gap:14px;padding-top:22px;font-size:.9375rem;display:grid}.author-box .avatar{background:var(--accent-soft);width:48px;height:48px;color:var(--accent);border-radius:50%;place-items:center;font-size:1.25rem;display:grid}.author-box strong{color:var(--ink);font-weight:600;display:block}.author-box a{color:var(--accent)}.related h2{font-size:var(--step-2);margin-bottom:18px}.related .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.related .card-title{font-size:1.05rem}.related .card-excerpt{display:none}@media (max-width:720px){.related .grid{grid-template-columns:1fr}}.sidebar{top:calc(env(safe-area-inset-top,0px) + 88px);gap:20px;display:grid;position:sticky}.side-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.side-title{margin-bottom:12px;font-size:1.05rem}.toc-title{letter-spacing:.08em;color:var(--muted);margin-bottom:10px;font-size:.75rem;font-weight:600}.toc ol{border-left:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.toc a{color:var(--muted);border-left:2px solid #0000;margin-left:-1px;padding:6px 0 6px 14px;font-size:.9rem;line-height:1.5;text-decoration:none;display:block}.toc a:hover{color:var(--ink)}.toc a[aria-current=true]{color:var(--accent);border-left-color:var(--accent);font-weight:600}.recent{gap:14px;margin:0;padding:0;list-style:none;display:grid}.recent a{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;text-decoration:none;display:grid}.recent .thumb{background:var(--tint,var(--tint-sage));border-radius:8px;place-items:center;width:64px;height:48px;display:grid}.recent .thumb .glyph{width:26px;height:26px;color:var(--accent)}.recent strong{font-size:.875rem;font-weight:500;line-height:1.45;display:block}.recent span{color:var(--muted);font-size:.75rem}.recent a:hover strong{color:var(--accent)}.side-cats{flex-wrap:wrap;gap:8px;display:flex}.toc-mobile{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:0 18px;display:none}.toc-mobile summary{cursor:pointer;padding:12px 0;font-weight:600}.toc-mobile .toc ol{margin-bottom:14px}@media (max-width:1023px){.article-layout{grid-template-columns:1fr;gap:48px}.sidebar{position:static}.sidebar .toc-box{display:none}.toc-mobile{display:block}}.prose h3{font-size:var(--step-1);margin-top:10px}.prose .inline-cta h3{margin-top:0}.plan{gap:10px;min-width:0;margin:0;display:grid}.plan svg{background:var(--surface);border:1px solid var(--line);border-radius:12px;width:100%;height:auto;display:block}.plan figcaption{color:var(--muted);font-size:.875rem;line-height:1.6}.plan text{font-family:var(--font);fill:var(--ink);font-size:15px;font-weight:500}.plan text.d{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:400}.plan-sm{width:100%;max-width:30rem;margin-inline:auto}.pl-floor{fill:var(--bg)}.pl-wetroom{fill:var(--tint-sky)}.pl-soil{fill:var(--tint-sand)}.pl-bed{fill:var(--tint-sand);stroke:var(--muted);stroke-width:1.5px}.pl-item{fill:var(--tint-sage);stroke:var(--muted);stroke-width:1.5px}.pl-wet{fill:var(--tint-sky);stroke:var(--muted);stroke-width:1.5px}.pl-fixture{fill:var(--surface);stroke:var(--muted);stroke-width:1.5px}.pl-cover{fill:var(--accent);stroke:var(--ink);stroke-width:1.5px}.pl-wall{fill:none;stroke:var(--ink);stroke-width:8px}.pl-wall2{fill:none;stroke:var(--ink);stroke-width:6px}.pl-part{fill:none;stroke:var(--ink);stroke-width:5px}.pl-pipe{fill:none;stroke:var(--ink);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.pl-supply{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round}.pl-rain{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.pl-win{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.pl-winline{fill:none;stroke:var(--ink);stroke-width:1.5px}.pl-gap{fill:var(--bg);stroke:none}.pl-leaf{fill:none;stroke:var(--ink);stroke-width:3px}.pl-swing{fill:none;stroke:var(--muted);stroke-width:1.5px}.pl-walk{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-dasharray:7 7;stroke-linecap:round;stroke-linejoin:round}.pl-dim{fill:none;stroke:var(--muted);stroke-width:1.5px}@media (max-width:620px){.plan text{font-size:22px}.plan text.d{font-size:19px}.plan.plan-sm text{font-size:15px}}.about-page{gap:36px;max-width:46rem;margin-inline:auto;padding-block:24px 80px;display:grid}.about-page .lede{color:var(--muted);font-size:1.125rem}.about-page h2{font-size:var(--step-2);margin-bottom:12px}.about-page ul{gap:8px;margin:0;padding-left:1.2em;display:grid}.contact-row{flex-wrap:wrap;align-items:center;gap:16px;margin-top:14px;display:flex}.ask{background:var(--surface);width:min(560px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);box-shadow:var(--shadow);border:0;border-radius:18px;padding:0}.ask::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ask-inner{gap:18px;padding:28px;display:grid;position:relative}.ask-head{gap:8px;padding-right:40px;display:grid}.ask-head h2{font-size:var(--step-2)}.ask-head p{color:var(--muted);font-size:.9375rem;line-height:1.65}.ask-ref{color:var(--accent);font-size:.8125rem;font-weight:600}.ask-close{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:18px;right:18px}.ask form{gap:16px;display:grid}.field{gap:6px;display:grid}.field label{font-size:.9375rem;font-weight:600}.field label span{color:var(--muted);font-weight:400}.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:11px 14px}.field textarea{resize:vertical;min-height:130px;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field [aria-invalid=true]{border-color:var(--danger)}.hint{color:var(--muted);font-size:.8125rem}.field-error{color:var(--danger);font-size:.8125rem;font-weight:500}.consent{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;font-size:.875rem;line-height:1.6;display:grid}.consent input{width:18px;height:18px;accent-color:var(--accent);margin-top:2px}.field label.consent{cursor:pointer;font-size:.875rem;font-weight:400}.field label.consent span{color:var(--muted)}.ask-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.btn-ghost{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;padding:10px 18px;font-weight:600}.ask-done{justify-items:start;gap:14px;padding-block:8px;display:grid}.ask-done .check{background:var(--accent-soft);width:48px;height:48px;color:var(--accent);border-radius:50%;place-items:center;font-size:1.5rem;display:grid}.ask-done p{color:var(--muted)}.proto-tag{border:1px dashed var(--muted);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600}@media (max-width:620px){.ask{border-radius:18px 18px 0 0;width:100%;max-width:100%;max-height:92dvh;margin:auto 0 0}.ask-inner{padding:24px max(16px, env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}.card-link:hover,.btn:hover{transform:none}}
[hidden]{display:none!important}.nav a{color:var(--muted);white-space:nowrap;border-radius:8px;padding:6px 12px;font-size:.9375rem;text-decoration:none}.nav a:hover{color:var(--ink);background:var(--accent-soft)}.nav a[aria-current=true]{color:var(--accent);background:var(--accent-soft);font-weight:600}.lang a{color:var(--muted);border-radius:8px;padding:4px 10px;font-size:.8125rem;font-weight:600;text-decoration:none}.lang a.on{background:var(--accent);color:var(--accent-ink)}.mobile-nav a{padding:10px 4px;font-size:1rem;text-decoration:none}.mobile-nav a[aria-current=true]{color:var(--accent);font-weight:600}.site-footer ul a{text-decoration:none}.site-footer ul a:hover{color:var(--band-ink)}.side-cats a.filter{text-decoration:none;display:inline-block}:lang(ja) body{font-family:IBM Plex Sans Thai,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic UI,Meiryo,Noto Sans JP,sans-serif}:lang(zh) body{font-family:IBM Plex Sans Thai,PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif}:lang(ja) .prose,:lang(zh) .prose{line-break:strict}.lang-mobile{display:none}.mobile-nav .lang a{padding:6px 12px;font-size:.875rem}@media (max-width:560px){.site-header>.wrap>.lang{display:none}.menu-btn{margin-left:auto}.mobile-nav .lang-mobile{justify-self:start;margin-top:6px;display:inline-flex}}
