:root{--ink:#173c34;--muted:#52645b;--paper:#faf9f4;--line:#d5dfd5;--green:#21594c;--mint:#eaf1dd}
*{box-sizing:border-box}html{scroll-padding-top:125px;scroll-behavior:smooth}body.practical{margin:0;background:var(--paper);color:var(--ink);font:18px/1.75 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}
.practical a{color:inherit;text-underline-offset:.22em}.practical button,.practical input{font:inherit}.practical button,.practical a{touch-action:manipulation}.practical :focus-visible{outline:3px solid #a86413;outline-offset:4px}.practical [hidden]{display:none!important}
.p-skip{position:fixed;left:16px;top:-100px;z-index:100;background:white;padding:12px}.p-skip:focus{top:12px}.p-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px max(24px,calc((100vw - 1180px)/2));background:#faf9f4f5;border-bottom:1px solid var(--line)}
.p-brand{font-size:20px;font-weight:800;text-decoration:none;line-height:1.4}.p-brand small{display:block;font-size:16px;font-weight:400;color:var(--muted)}.p-header nav{display:flex;align-items:center;gap:24px}.p-header nav a{font-size:16px;text-decoration:none}.p-header-cta{background:var(--ink);color:white!important;padding:11px 17px;border-radius:6px;white-space:nowrap}.p-wrap{max-width:1180px;margin:auto;padding:0 28px}.p-tag{font-size:16px;color:var(--muted);margin:0 0 10px}
.p-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;background:var(--green);color:white!important;border:1px solid var(--green);border-radius:6px;padding:13px 22px;font-weight:700;text-decoration:none;cursor:pointer}.p-button:hover{background:var(--ink)}
h1,h2,h3{line-height:1.5;text-wrap:balance}h1{font-size:clamp(32px,4vw,48px);letter-spacing:-.025em;margin:0 0 20px}h2{font-size:28px;margin:0 0 18px}h3{font-size:21px;margin:0 0 14px}p{margin:0 0 18px}
.v-article{max-width:1020px}.v-breadcrumb{font-size:16px;padding:24px 0;color:var(--muted)}.v-article-head{max-width:880px;margin:8px 0 32px}.v-scene{font-size:20px}.v-benefit{background:var(--mint);border-left:4px solid var(--green);padding:18px 22px;margin:22px 0 16px}.v-benefit b{font-size:16px}.v-benefit p{margin:5px 0 0}.v-uses{display:flex;flex-wrap:wrap;gap:8px 20px;padding:0;list-style:none;font-size:16px;color:var(--muted);margin:0}.v-uses li:before{content:'・'}
.v-article article>section{margin:0 0 36px}.v-note{font-size:16px;color:var(--muted);line-height:1.7}.v-before-after{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.v-before-after>div{min-width:0;padding:23px;border:1px solid var(--line);border-radius:8px;background:white}.v-before-after .v-output{background:var(--mint);border-color:#adc8ad}.v-before-after h3{font-size:20px}.v-before-after h3 span{font-size:16px;color:var(--muted);margin-right:10px}.v-before-after pre{font:inherit;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;margin:0}
.v-three{display:flex;gap:12px;padding:0;list-style:none;counter-reset:trial;margin:0 0 20px}.v-three li{flex:1;background:#edf0e9;padding:13px 16px;font-size:16px;counter-increment:trial}.v-three li:before{content:counter(trial) '　';font-weight:800}.p-copy-status{min-height:27px;margin:8px 0}
.v-details{padding:16px 0;border-top:1px solid var(--line)}.v-details summary{font-size:18px;font-weight:650;cursor:pointer;min-height:34px}.v-details[open]>summary{margin-bottom:15px}.v-details blockquote{background:white;border-left:3px solid var(--green);padding:16px 20px;margin:12px 0}.v-prompt{font:16px/1.85 ui-monospace,"SFMono-Regular",Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;padding:22px;border:1px solid var(--line);background:white;margin:0 0 15px}
.v-check{border:1px solid #acc2a3;background:#f0f4e7;border-radius:6px;padding:18px 22px;margin:20px 0}.v-check b{font-size:16px}.v-check p{margin:5px 0 0}.v-consult{padding:28px 32px;border-radius:8px;background:var(--ink);color:white}.v-consult h2{font-size:28px}.v-consult .p-button{background:#d9ef8c;color:var(--ink)!important;border-color:#d9ef8c}.v-consult .v-note{color:#e2eadd;margin:18px 0 0}.v-sources{font-size:16px;color:var(--muted)}.v-sources p,.v-sources li{font-size:16px;overflow-wrap:anywhere}.v-related{margin:35px 0 55px}.v-related .p-cards{grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0}
.v-index-hero{padding:54px 0 46px;max-width:850px}.v-index-hero h1{font-size:clamp(38px,5vw,62px)}.v-index-hero>p:not(.p-tag){font-size:21px}.p-find{padding:22px;background:#edf1e5;border-radius:8px;margin:22px 0}.p-find label{display:block;font-weight:650;margin-bottom:9px}.p-find input{width:100%;background:white;padding:13px 16px;border:1px solid #93a992;border-radius:5px;color:var(--ink);font-size:18px}.p-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.p-filters button{font-size:16px;min-height:44px;border:1px solid #93a992;border-radius:24px;padding:7px 16px;background:white;color:var(--ink);cursor:pointer}.p-filters button[aria-pressed=true]{background:var(--ink);color:white}.p-find [role=status]{font-size:16px;margin:12px 0 0}
.p-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.p-card{position:relative;min-width:0;background:white;border:1px solid var(--line);border-radius:8px;padding:23px;display:flex;flex-direction:column}.p-card h3{font-size:21px}.p-card h3 a{text-decoration:none}.p-card h3 a:after{content:'';position:absolute;inset:0}.p-card:has(a:hover){border-color:var(--green);box-shadow:0 4px 14px #173c3410}.p-card .p-tag{font-size:16px}.p-card>p:not(.p-tag){font-size:18px}.v-card-link{font-size:16px;font-weight:650;margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.v-agent{background:var(--mint);padding:28px 32px;border-radius:8px;margin:45px 0 30px}.v-legacy{margin:24px 0 45px}.p-wrap>section.v-consult{margin:30px 0}
.p-footer{display:flex;gap:25px;justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--line);padding:35px max(28px,calc((100vw - 1120px)/2));font-size:16px}.p-footer p{font-size:16px}.p-footer nav{display:flex;gap:12px 20px;flex-wrap:wrap;max-width:540px}.p-footer small{font-size:16px;flex-basis:100%;color:var(--muted)}.p-preview-banner{font-size:16px;line-height:1.6;background:#eee8d6;color:#3d4638;padding:8px 20px;text-align:center;border-bottom:1px solid #d2cbb8}
@media(max-width:900px){.p-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.p-header{padding:14px 22px}.p-header nav{gap:14px}.v-before-after{gap:14px}.v-before-after>div{padding:18px}}
@media(max-width:600px){.p-wrap{padding:0 20px}.p-header{padding:12px 18px;gap:12px;align-items:center}.p-brand{font-size:18px;max-width:150px}.p-brand small{font-size:16px}.p-header nav{gap:8px 12px;justify-content:flex-end;flex-wrap:wrap;max-width:180px}.p-header nav a{font-size:16px}.p-header-cta{padding:8px 12px}.v-breadcrumb{padding:20px 0 14px}.v-article-head{margin:4px 0 25px}h1{font-size:30px}h2{font-size:25px}.v-scene{font-size:18px}.v-benefit{padding:16px 18px;margin:18px 0 12px}.v-before-after{grid-template-columns:1fr}.v-before-after>div{padding:18px}.v-three{flex-direction:column;gap:5px}.v-three li{padding:9px 14px}.v-article .p-copy{width:100%}.v-prompt{padding:16px}.v-consult,.v-agent{padding:24px 21px}.v-consult h2{font-size:25px}.v-check{padding:16px 18px}.p-cards,.v-related .p-cards{grid-template-columns:1fr}.p-card{padding:21px}.v-index-hero{padding:34px 0}.v-index-hero h1{font-size:38px}.v-index-hero>p:not(.p-tag){font-size:18px}.p-find{padding:18px}.p-preview-banner{text-align:left}.p-footer{padding:28px 20px}.p-button{padding:13px 17px}.v-uses{gap:5px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.v-try-link{font-size:16px;font-weight:650}

/* V29 visual revision: short invitation, task-specific diagrams, detailed body. */
.v-index-hero{padding:28px 0 22px;max-width:850px}
.v-index-hero h1{font-size:clamp(32px,3.8vw,44px);line-height:1.35;margin:0 0 14px;text-wrap:initial}
.v-index-hero h1>span{font-size:.72em;font-weight:650}
.v-index-hero>p:not(.p-tag){font-size:18px;line-height:1.75;margin:0;max-width:820px}
.v-find-tools{border-top:1px solid var(--line);padding:0}
.v-find-tools summary{display:list-item;cursor:pointer;font-size:16px;font-weight:650;min-height:44px;padding:9px 0}
.v-find-tools .p-find{margin:0 0 14px;padding:18px}
.v-result-count{font-size:16px;color:var(--muted);margin:8px 0 14px}
.p-card{padding:0;overflow:hidden;border-radius:10px}
.p-card:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #a86413}
.v-card-target{display:flex;flex:1;flex-direction:column;text-decoration:none!important;min-height:44px}
.v-card-target:focus-visible{outline-offset:-4px}
.v-card-picture{position:relative;background:#eef3e9;aspect-ratio:8/5;overflow:hidden;border-bottom:1px solid var(--line)}
.v-card-picture img{display:block;width:100%;height:100%;object-fit:contain}
.v-prompt-badge{background:#f1f5e9;border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:1px 7px;font-size:16px;line-height:1.6;white-space:nowrap}
.v-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
.v-card-copy{padding:18px 20px;flex:1;display:flex;flex-direction:column}
.v-card-copy .p-tag{font-size:16px;margin:0 0 5px}
.v-card-copy h3{font-size:21px;line-height:1.55;margin:0 0 9px;text-wrap:initial}
.v-card-result{font-size:16px;line-height:1.7;color:var(--muted);margin:0 0 16px;overflow-wrap:anywhere}
.v-card-link{font-size:16px;line-height:1.65;display:flex;justify-content:space-between;gap:5px;padding-top:12px}
.p-header nav a{display:inline-flex;align-items:center;min-height:44px}
.v-visual-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;max-width:none;align-items:center;margin:6px 0 32px}
.v-article-intro{min-width:0}
.v-visual-head h1{font-size:clamp(28px,3.2vw,38px);line-height:1.5;text-wrap:initial;margin:0 0 14px;line-break:strict}
.v-visual-head .v-scene{font-size:18px;line-height:1.75;margin:0 0 12px}
.v-article-picture{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#eef3e9}
.v-article-picture img{display:block;width:100%;height:auto}
.v-visual-head .p-tag{font-size:16px;line-height:1.7;margin-bottom:9px}
.v-try-link{display:inline-flex;min-height:44px;align-items:center}
.v-example-scene{font-size:18px;line-height:1.75;margin-bottom:16px}
.v-details summary{min-height:44px;line-height:1.7}
.v-breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
@media(min-width:901px){.p-cards{gap:22px}.v-index-hero{padding-top:26px}.p-preview-banner{padding-top:5px;padding-bottom:5px}}
@media(max-width:900px){.v-visual-head{gap:22px}.v-visual-head h1{font-size:29px}}
@media(max-width:600px){
 .p-header{padding:8px 16px;gap:10px;align-items:center}
 .p-brand{font-size:18px;max-width:none;line-height:1.35;white-space:nowrap;flex:0 0 auto}
 .p-brand small{display:none}
 .p-header nav{max-width:none;min-width:0;flex:1;gap:0 12px}
 .p-header nav a{min-height:44px;font-size:16px;line-height:1.5}
 .p-header-cta{padding:7px 11px}
 .p-preview-banner{padding:6px 16px;font-size:16px;line-height:1.5}
 .v-index-hero{padding:22px 0 18px}
 .v-index-hero h1{font-size:28px;line-height:1.4;margin-bottom:12px;letter-spacing:-.035em}
 .v-index-hero h1>span{font-size:21px}
 .v-index-hero>p:not(.p-tag){font-size:18px;line-height:1.7}
 .v-result-count{margin:4px 0 12px}
 .v-find-tools summary{padding:8px 0;line-height:1.7}
 .v-find-tools .p-find{padding:16px}
 .p-card{padding:0}
 .v-card-copy{padding:17px 18px}
 .v-card-copy h3{font-size:22px}
 .v-visual-head{display:flex;flex-direction:column;gap:18px;align-items:stretch;margin-bottom:28px}
 .v-visual-head h1{font-size:28px;line-height:1.5;margin-bottom:12px}
 .v-visual-head .v-scene{font-size:18px}
 .v-article-picture{order:-1}
 .v-breadcrumb{padding:6px 0 10px;line-height:1.7}
 .v-breadcrumb span{display:none}
 .v-related .p-cards{gap:18px}
}
