:root{--ink:#241d25;--muted:#625e64;--pink:#b7488d;--paper:#f7f7f8;--line:#e2e3e7}*{box-sizing:border-box}html{scroll-padding-top:80px;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 -apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif}a{color:inherit;text-underline-offset:4px}header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;gap:12px;padding:15px 24px;background:#fffdf8;border-bottom:1px solid var(--line);font-size:12px;font-weight:800}header a{text-decoration:none}header a:first-child{color:#c0478c}main{max-width:1060px;margin:auto;padding:0 28px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:42px;align-items:center;padding:64px 0 52px}.hero img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:6px}.eyebrow{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--pink)}h1{font-size:clamp(42px,5.8vw,68px);line-height:1.2;letter-spacing:-.055em;margin:20px 0 24px}em{font-style:normal;color:var(--pink)}.lead{font-size:22px;font-weight:750;line-height:1.65}.primary,button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:0;border-radius:999px;background:var(--ink);color:white;font:700 14px/1.5 inherit;text-decoration:none;cursor:pointer}.primary{margin-top:16px}button:hover,.primary:hover{background:#823466}a:focus-visible,button:focus-visible{outline:3px solid #cc5fa7;outline-offset:4px}.intro,#index,article,.bonus,.sources{max-width:760px;margin:0 auto;padding:42px 0;border-top:1px solid var(--line)}h2{font-size:clamp(26px,3.5vw,37px);line-height:1.45;letter-spacing:-.035em;margin:14px 0 24px}h2 em{display:block}p{margin:16px 0}.note{background:#eceef0;padding:24px;margin:26px 0 0}.note p:last-child{margin-bottom:0}.contents{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.contents a{display:flex;align-items:center;gap:12px;min-height:60px;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:650;font-size:14px}.contents b{color:var(--pink);font-size:22px}.small{font-size:13px;color:var(--muted)}.tip-head{display:flex;align-items:center;gap:20px}.num{font-size:70px;line-height:1.1;letter-spacing:-.07em;font-weight:850;color:#cc5fa7}.tag{font-size:12px;color:var(--muted);border:1px solid #d5d5da;border-radius:999px;padding:5px 12px}.when{font-weight:700;color:#55505b}.prompt{margin:26px 0;background:#fff;border:1px solid #d9dbe0;border-radius:12px;overflow:hidden}.prompt-head{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);font-size:13px}.prompt-head b{color:#843565}button{flex-shrink:0;font-size:13px;font-family:inherit}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.9 -apple-system,"Hiragino Sans",sans-serif;padding:24px;margin:0}.caution{font-size:14px;color:var(--muted)}.caution b{display:inline-block;color:var(--ink);margin-right:8px}.bonus{background:#eceef0;padding:32px;margin:32px auto}.sources li{margin:12px 0;overflow-wrap:anywhere}.sources ul{padding-left:20px}footer{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;background:#fffdf8;padding:30px 20px;border-top:1px solid #e7dfd5;color:#746c64;font-size:12px}footer a{background:white;border:1px solid #e7dfd5;border-radius:999px;padding:10px 16px;min-height:44px;text-decoration:none;color:#241d25;font-weight:800}#status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:90%;padding:12px 20px;background:#241d25;color:white;border-radius:10px;opacity:0;pointer-events:none;font-size:14px}#status.show{opacity:1}@media(max-width:640px){header{padding:13px 18px;font-size:10px}main{padding:0 20px}.hero{grid-template-columns:1fr;padding:30px 0;gap:28px}.hero img{max-width:310px;justify-self:center}.hero h1{font-size:48px}.lead{font-size:20px}.hero p{font-size:15px}.hero .eyebrow{font-size:10px}.intro,#index,article,.sources{padding:32px 0}.contents{grid-template-columns:1fr}.num{font-size:58px}h2{font-size:29px}.prompt-head{padding:14px;align-items:flex-start;flex-wrap:wrap}pre{padding:18px 16px}.note{padding:20px}.bonus{padding:22px 18px}.tag{font-size:11px}.when{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header{position:static}button,#index,#status,.primary{display:none}body{background:white}.prompt{break-inside:avoid}article{break-before:auto}.hero{padding:20px 0}}
