:root{font-family:Inter,Noto Sans JP,Helvetica Neue,Arial,sans-serif;font-size:20px;line-height:1.6;font-weight:400;color:#1f1c19;background-color:#f5f0e7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:#f5f0e7;color:#1f1c19}#app{max-width:1200px;margin:0 auto;padding:32px 16px 24px;display:flex;flex-direction:column;gap:12px}.page-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-button{border:1px solid #d5c7af;background:#f1e6d4;color:#1f1c19;border-radius:999px;width:18px;height:18px;padding:0;font-size:0;line-height:1;font-weight:600;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.page-button:hover{background:#e9dfcc}.page-button.active{border-color:#a89979;background:#ded3be;color:#1a140d}.layout{display:grid;gap:12px;align-items:start;min-height:70vh}.layout-half{grid-template-columns:var(--desc-fr, 1fr) var(--canvas-fr, 1fr)}.layout-full{grid-template-columns:1fr}.layout-full .description{display:none}.layout-none{grid-template-columns:1fr}.layout-none .canvas-shell{display:none}.panel{background:#fffaf1;border:1px solid #e6dac4;padding:16px;border-radius:0}.description{overflow-y:auto;background:transparent;border:none;padding:0;line-height:1.5}.canvas-shell{background:transparent;border:none;border-radius:0;padding:0;display:flex;justify-content:center;align-items:center}canvas{display:block;width:100%;height:auto;background:#f8f4ec;border-radius:0}.slide{display:flex;flex-direction:column}.slide>*{margin:0}.slide>*+*{margin-top:12px}.slide h1{font-size:42px;line-height:1.2}.slide h2{font-size:26px;line-height:1.3}.slide p{font-size:24px;line-height:1.5}.slide ul{margin:0;padding-left:20px;line-height:1.4}.slide li+li{margin-top:6px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#6f5b3f;line-height:1.2}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.info-card{border:1px solid #e6dac4;border-radius:0;padding:12px;background:#fffdf8;font-size:22px;display:flex;flex-direction:column;align-items:flex-start}.info-card>*{margin:0}.info-card>*+*{margin-top:10px}.info-card h2{font-size:24px;line-height:1.3;margin:0}.info-card p,.info-card ul{font-size:22px;line-height:1.5;margin:0;padding:0}.info-card ul{padding-left:18px}.info-card li+li{margin-top:6px}img{max-width:100%;height:auto;display:block;border-radius:10px;box-shadow:0 2px 6px #00000014}@media(max-width:960px){.layout-half{grid-template-columns:1fr}}
