/* Existing style.css + site-premium.css supply brand tokens and navigation. */
.meeting-page .meeting-skip{position:fixed;top:-6rem;left:1rem;z-index:2000;background:var(--lp-paper);color:var(--lp-canvas);padding:12px 20px}
.meeting-page .meeting-skip:focus{top:1rem}
.meeting-page :focus-visible{outline:2px solid var(--lp-paper);outline-offset:5px}
.meeting-page #main:focus{outline:none}
.meeting-page .meeting-hero{padding-top:140px;padding-bottom:48px}
.meeting-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.75rem;color:var(--lp-body);margin-bottom:36px}
.meeting-crumbs a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.meeting-page .meeting-hero h1{font-family:var(--font-jp);font-size:clamp(1.9rem,4.7vw,3.6rem);font-weight:700;line-height:1.45;letter-spacing:-.025em;max-width:17em;margin:16px 0 24px;overflow-wrap:anywhere}
.meeting-lead{max-width:44em;font-size:1.05rem;color:var(--lp-body);line-height:1.95;margin:0}
.meeting-byline{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.75rem;color:var(--lp-mute);margin:24px 0}
.meeting-byline a{color:var(--lp-body);text-decoration:underline;text-underline-offset:4px}
.meeting-answer{max-width:860px;border-top:1px solid var(--brass);border-bottom:1px solid var(--lp-hair-2);padding:24px 0;font-size:1.03rem}
.meeting-answer p{margin:0;max-width:44em;line-height:1.95}
.meeting-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:64px;align-items:start}
.meeting-toc{position:sticky;top:112px;padding-bottom:24px;font-size:.82rem;line-height:1.7}
.meeting-toc>p{color:var(--lp-mute);font-size:.73rem;letter-spacing:.04em;margin:0 0 16px}
.meeting-toc ol{margin:0;padding:0 0 0 1.2rem}
.meeting-toc li{padding:0 0 16px 4px}
.meeting-toc a{color:var(--lp-body);text-decoration:none}
.meeting-toc a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--lp-paper)}
.meeting-toc-practice{display:block;border-top:1px solid var(--lp-hair-2);padding-top:20px;margin-top:8px}
.meeting-prose{min-width:0;font-size:1rem;line-height:2;color:var(--lp-body)}
.meeting-prose p{margin:0 0 20px;overflow-wrap:break-word}
.meeting-prose strong{color:var(--lp-paper);font-weight:700}
.meeting-prose a{color:var(--lp-paper);text-decoration:underline;text-decoration-color:var(--brass);text-underline-offset:5px;text-decoration-thickness:1px}
.meeting-prose a:hover{text-decoration-thickness:2px}
.meeting-section{padding-bottom:48px;margin-bottom:40px;border-bottom:1px solid var(--lp-hair);scroll-margin-top:120px}
.meeting-prose h2{font-family:var(--font-jp);font-size:clamp(1.35rem,2.1vw,1.75rem);line-height:1.6;color:var(--lp-paper);letter-spacing:-.02em;margin:0 0 24px;font-weight:700}
.meeting-phrase{padding:20px 24px;margin:24px 0;background:var(--lp-canvas-2);border-left:2px solid var(--brass)}
.meeting-phrase p[lang=en]{font-family:var(--font-body);font-size:1.125rem;line-height:1.85;color:var(--lp-paper);margin-bottom:12px}
.meeting-phrase p:last-child{margin-bottom:0}
.meeting-phrase .meeting-note{font-size:.84rem;color:var(--lp-body)}
.meeting-table-wrap{overflow-x:auto;margin:28px 0;max-width:100%;border:1px solid var(--lp-hair-2)}
.meeting-table-hint{display:none}
.meeting-table-wrap table{width:100%;min-width:500px;border-collapse:collapse;font-size:.87rem;line-height:1.85;text-align:left}
.meeting-table-wrap caption{text-align:left;font-size:.8rem;color:var(--lp-body);padding:16px;background:var(--lp-canvas-2);border-bottom:1px solid var(--lp-hair-2)}
.meeting-table-wrap th,.meeting-table-wrap td{padding:16px;vertical-align:top;border-bottom:1px solid var(--lp-hair-2)}
.meeting-table-wrap thead th{color:var(--lp-paper);font-weight:700;background:var(--lp-surface)}
.meeting-table-wrap tbody th{font-weight:500;color:var(--lp-paper);min-width:108px}
.meeting-table-wrap tbody tr:last-child>*{border-bottom:0}
.meeting-steps{padding-left:1.4rem;margin:24px 0}
.meeting-steps li{padding-left:8px;margin-bottom:20px}
.meeting-detail{border:1px solid var(--lp-hair-2);margin:12px 0 20px}
.meeting-detail summary{padding:20px;cursor:pointer;color:var(--lp-paper);font-weight:600;line-height:1.7}
.meeting-detail summary::marker{color:var(--brass)}
.meeting-detail>div{padding:0 24px 8px}
.meeting-dialogue{display:grid;grid-template-columns:48px minmax(0,1fr);gap:20px 16px;margin:28px 0;border-left:2px solid var(--brass);padding:8px 0 8px 24px}
.meeting-dialogue dt{font-size:.8rem;color:var(--lp-mute);padding-top:4px}
.meeting-dialogue dd{margin:0;font-family:var(--font-body);font-size:1.08rem;line-height:1.9;color:var(--lp-paper)}
.meeting-scenario{background:var(--lp-canvas-2);padding:24px;margin:24px 0}
.meeting-scenario p{margin:0}
.meeting-related ul{list-style:none;padding:0;margin:0}
.meeting-related li{padding:16px 0;border-bottom:1px solid var(--lp-hair)}
.meeting-related li:last-child{border-bottom:0}
.meeting-related li>a{font-size:1rem;font-weight:600}
.meeting-related li>p{font-size:.86rem;margin:8px 0 0}
.meeting-end{padding:0 0 72px}
.meeting-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.meeting-page .meeting-actions a.btn{text-decoration:none;white-space:normal;line-height:1.5;letter-spacing:.03em;font-family:var(--font-jp)}
.meeting-footer{border-top:1px solid var(--lp-hair-2);padding-top:40px;padding-bottom:40px;font-size:.8rem;color:var(--lp-body)}
.meeting-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0}
.meeting-footer nav a{color:var(--lp-body);text-decoration:none}
.meeting-footer nav a:hover{text-decoration:underline}
.meeting-footer small{color:var(--lp-mute)}
@media(max-width:1000px){.meeting-layout{grid-template-columns:200px minmax(0,1fr);gap:32px}}
@media(max-width:760px){
 .meeting-page .meeting-hero{padding-top:112px;padding-bottom:32px}
 .meeting-crumbs{font-size:.7rem;margin-bottom:28px}
 .meeting-lead{font-size:.95rem}
 .meeting-answer{font-size:.95rem;padding:20px 0}
 .meeting-layout{display:block}
 .meeting-toc{position:static;border-bottom:1px solid var(--lp-hair);padding:0 0 28px;margin-bottom:36px}
 .meeting-toc ol{columns:1}
 .meeting-toc li{padding-bottom:12px}
 .meeting-prose{font-size:.95rem}
 .meeting-section{padding-bottom:32px;margin-bottom:32px;scroll-margin-top:104px}
 .meeting-phrase{padding:16px}
 .meeting-phrase p[lang=en]{font-size:1.05rem}
 .meeting-dialogue{grid-template-columns:32px minmax(0,1fr);padding-left:16px;gap:20px 12px}
 .meeting-dialogue dd{font-size:1rem}
 .meeting-table-wrap table{min-width:480px}
 .meeting-table-hint{display:block;margin-top:4px;font-size:.7rem}
 .meeting-page .meeting-actions a.btn{width:100%}
}
@media(max-width:380px){body.site-premium.meeting-page .wrap{padding-left:20px;padding-right:20px}.meeting-page .meeting-hero h1{font-size:1.75rem}.meeting-page .lp-nav .brandmark{font-size:15px}.meeting-page .brand-icon{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.meeting-page *{scroll-behavior:auto!important;transition:none!important}}
@media print{.lp-nav,.meeting-toc,.meeting-footer,.meeting-end,.meeting-skip{display:none!important}.meeting-page,.meeting-prose,.meeting-prose strong,.meeting-prose h2,.meeting-phrase p[lang=en]{background:#fff!important;color:#000!important}.meeting-layout{display:block}.meeting-page .meeting-hero{padding-top:0}.meeting-table-wrap{overflow:visible}.meeting-table-wrap table{min-width:0}.meeting-section{break-inside:auto}.meeting-phrase,.meeting-detail{break-inside:avoid}}
