:root{--ink:#202124;--muted:#5f6368;--line:#dadce0;--accent:#1a73e8;--soft:#e8f0fe}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.85}.hero{padding:38px max(24px,calc((100vw - 850px)/2));border-bottom:1px solid var(--line)}.brand{color:var(--ink);text-decoration:none;font-size:.75rem;font-weight:800;letter-spacing:.12em}.eyebrow{display:none}.hero h1{margin:22px 0 2px;font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.025em}.lead{margin:0 0 23px;color:var(--muted)}.search-wrap{display:flex;max-width:640px;border:1px solid #bfc3c9;border-radius:7px;padding:3px}.search-wrap input{width:100%;border:0;outline:0;padding:9px 11px;font:inherit}button{border:0;border-radius:5px;padding:7px 10px;background:var(--soft);color:#174ea6;font:inherit;font-weight:650;cursor:pointer}button:disabled{opacity:.45;cursor:default}.search-nav{min-width:34px;padding:7px 8px}.search-status{margin:8px 0 0;font-size:.8rem;color:var(--muted)}.search-hit{background:#fff19c;padding:0 .08em;border-radius:2px}.search-hit.search-hit-active{background:#ffcc4d;outline:1px solid #d89a00}.layout{width:min(850px,calc(100% - 40px));margin:28px auto 58px}.intro,.rule-card{border-bottom:1px solid var(--line);padding:0 0 26px;margin-bottom:26px}.intro h2,.rule-card h2{margin:0 0 14px;line-height:1.4;font-size:1.24rem}.intro p,.rule-card p{margin:0 0 10px}.rule-card p:last-child{margin-bottom:0}.bullet{padding-left:1.3em;text-indent:-1.05em}.bullet::before{content:"•";padding-right:.65em;color:var(--muted)}.sub{margin-left:1.15em;color:#3c4043}.rule-card strong{font-weight:750}.rule-card code{padding:.08em .3em;background:#f1f3f4;border-radius:3px;font-family:ui-monospace,monospace;font-size:.9em}.rule-card table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.92rem}.rule-card th,.rule-card td{padding:9px 10px;border:1px solid var(--line);text-align:left}.rule-card th{background:#f8f9fa}.loading,.no-results{color:var(--muted)}.no-results{text-align:center;padding:56px 20px}footer{padding:25px 24px;border-top:1px solid var(--line);color:var(--muted);text-align:center;font-size:.8rem}@media(max-width:780px){.hero{padding-top:26px}.layout{margin-top:20px}.intro,.rule-card{padding-bottom:20px;margin-bottom:20px}.rule-card table{font-size:.8rem}}
