:root{--color-red: #c0392b;--color-blue: #2980b9;--color-green: #27ae60;--color-bg: #f7f6f2;--color-white: #ffffff;--color-text: #333333;--color-muted: #888888;--color-border: #e0e0e0;--color-subtle: #f5f5f5;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SF Mono", "Courier New", monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 14px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-bg);font-family:var(--font-sans);color:var(--color-text);overflow-x:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.content-page{max-width:600px;margin:0 auto;padding:24px 16px 80px}.content-page h1{font-size:clamp(22px,6vw,32px);font-weight:800;color:#222;line-height:1.2;margin-bottom:8px}.content-page h2{font-size:clamp(17px,4vw,22px);font-weight:700;color:#222;margin:44px 0 14px;border-bottom:2px solid var(--color-border);padding-bottom:6px}.content-page h3{font-size:16px;font-weight:700;color:var(--color-blue);margin:24px 0 10px;text-transform:uppercase;letter-spacing:.06em}.content-page p{font-size:15px;line-height:1.85;color:#444;margin-bottom:14px}.content-page ul,.content-page ol{margin:0 0 14px 20px}.content-page li{font-size:15px;line-height:1.8;color:#444;margin-bottom:6px}.content-page a{color:var(--color-blue)}.content-page strong{color:#222}.cp-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 18px;margin:16px 0}.cp-label{font-size:11px;color:var(--color-muted);text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:12px}.cp-tip{background:var(--color-blue);color:#fff;border-radius:var(--radius-md);padding:16px 18px;margin:20px 0}.cp-tip p{color:#def;margin:0;font-size:14px;line-height:1.7}.cp-tip strong{color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes linePop{0%{opacity:1;stroke-width:1.4}40%{opacity:.7;stroke-width:3}to{opacity:0;stroke-width:1.4}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.seo-footer{border-top:1px solid #e8e8e8;padding:40px 20px 32px;background:var(--color-bg)}.seo-footer-inner{max-width:560px;margin:0 auto;font-family:var(--font-sans);font-size:11.5px;line-height:1.75;color:#666}.seo-footer-inner h2{font-size:11.5px;font-weight:600;color:#555;letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px}.seo-footer-inner p{margin:0 0 10px}.seo-footer-inner a{color:#555;text-decoration:none}.seo-footer-legal{margin-top:16px;padding-top:12px;border-top:1px solid #e8e8e8;display:flex;gap:16px;flex-wrap:wrap}.seo-footer-legal a{font-size:11px;color:#aaa}.page-footer{border-top:1px solid #e8e8e8;padding:24px 20px;background:var(--color-bg)}.page-footer-inner{max-width:560px;margin:0 auto;display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.page-footer-inner a{font-size:12px;color:#aaa;text-decoration:none;font-family:var(--font-sans)}.content-flex svg{min-height:120px}.content-flex .card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:18px 16px;width:100%;box-sizing:border-box}.content-flex .card .label{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:12px}.content-flex .card svg{display:block;width:100%;max-width:100%;height:auto;min-height:0;max-height:260px;overflow:hidden}.content-flex .card svg+p{margin-top:10px;font-size:13px;color:#888;line-height:1.6}@media (hover: none) and (pointer: coarse){.kb-hint{display:none!important}}.content-flex .card .formula{font-size:clamp(14px,5vw,22px);font-weight:800;color:#c0392b;font-family:monospace;text-align:center;word-break:break-word;line-height:1.4;margin-bottom:8px}.content-flex .card .sub{font-size:13px;color:#888;text-align:center}.content-flex .card .links{display:flex;gap:16px;flex-wrap:wrap;font-size:14px}.content-flex .card .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.content-flex .card .bar{height:6px;border-radius:3px}.content-flex .card svg .prime{fill:#c0392b}.content-flex .card svg .composite{fill:#e0e0e0}.content-flex .card svg .num{font-size:11px;text-anchor:middle;dominant-baseline:central}
