/* kakuritsu.com */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: #111827; color: #f3f4f6; font-family: 'Inter', sans-serif; line-height: 1.6; }
.hero { min-height: 70vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 2rem; }
.notation { font-family: 'Fira Code', monospace; font-weight: 500; font-size: clamp(3rem, 8vw, 5rem); color: #3b82f6; display: block; margin-bottom: 0.5rem; }
.brand { font-family: 'Space Grotesk', sans-serif; font-weight: 600; font-size: clamp(2rem, 5vw, 3rem); color: #f3f4f6; }
.dist-bar { width: 200px; height: 8px; background: rgba(59,130,246,0.15); border-radius: 4px; margin-top: 1.5rem; overflow: hidden; }
.dist-fill { width: 65%; height: 100%; background: linear-gradient(to right, #3b82f6, transparent); border-radius: 4px; }
.analysis { max-width: 650px; margin: 0 auto; padding: 2rem 1.5rem; display: flex; flex-direction: column; gap: 1.25rem; }
.panel { background: #1f2937; border: 1px solid #374151; border-radius: 8px; padding: 1.5rem; }
.panel-title { font-family: 'Space Grotesk', sans-serif; font-weight: 600; font-size: 1rem; color: #f3f4f6; margin-bottom: 0.75rem; }
.bar-chart { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 0.75rem; }
.bar-row { display: flex; align-items: center; gap: 0.5rem; }
.bar-label { font-size: 0.65rem; color: #9ca3af; min-width: 60px; }
.bar { height: 16px; background: #3b82f6; border-radius: 3px; }
.panel-text { font-size: 0.8rem; color: #9ca3af; }
.tree { display: flex; flex-direction: column; align-items: center; margin-bottom: 0.75rem; }
.tree-node { width: 12px; height: 12px; border-radius: 50%; background: #3b82f6; }
.tree-node.root { margin-bottom: 0.5rem; }
.tree-branches { display: flex; gap: 2rem; }
.tree-branch { display: flex; flex-direction: column; align-items: center; gap: 0.3rem; }
.tree-line { width: 1px; height: 20px; background: #374151; }
.tree-val { font-family: 'Fira Code', monospace; font-size: 0.6rem; color: #fbbf24; }
.distribution { position: relative; padding: 2rem; max-width: 400px; margin: 0 auto; }
.bell-curve { width: 100%; height: 100px; background: linear-gradient(180deg, rgba(59,130,246,0.2) 0%, transparent 100%); border-radius: 100px 100px 0 0; border: 2px solid #3b82f6; border-bottom: 2px solid #374151; }
.sigma-marks { position: relative; height: 20px; }
.sigma-line { position: absolute; width: 1px; height: 16px; background: #374151; bottom: 0; }
.sigma-line.gold { background: #fbbf24; }
.theorem { text-align: center; padding: 4rem 2rem; }
.bayes { font-family: 'Fira Code', monospace; font-size: 0.9rem; color: #3b82f6; background: #1f2937; padding: 0.75rem 1.5rem; border-radius: 6px; display: inline-block; }
.qed { font-family: 'Fira Code', monospace; font-size: 0.8rem; color: #fbbf24; margin-top: 1rem; }
.theorem-brand { font-size: 0.65rem; color: #374151; display: block; margin-top: 1rem; }
.fade-in { opacity: 0; transform: translateY(12px); transition: opacity 0.5s ease, transform 0.5s ease; }
.fade-in.visible { opacity: 1; transform: translateY(0); }
