
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; line-height: 1.6; color: #333; background: #f5f5f5; }
.container { max-width: 900px; margin: 0 auto; padding: 20px; }
header { background: #FF6B00; color: white; padding: 20px 0; margin-bottom: 20px; }
header h1 { text-align: center; }
header a { color: white; text-decoration: none; }
.term-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.term-list a { background: white; padding: 12px; border-radius: 6px; text-decoration: none; color: #FF6B00; box-shadow: 0 1px 3px rgba(0,0,0,0.1); transition: all 0.2s; }
.term-list a:hover { background: #FF6B00; color: white; transform: translateY(-2px); }
.term-detail { background: white; padding: 30px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.term-detail h1 { color: #FF6B00; border-bottom: 3px solid #FF6B00; padding-bottom: 10px; margin-bottom: 10px; }
.reading { color: #666; font-size: 1.1em; margin-bottom: 20px; }
.description { font-size: 1.05em; line-height: 1.8; margin-bottom: 30px; }
.description a { color: #FF6B00; text-decoration: underline; }
.related { background: #fff5ed; padding: 20px; border-radius: 6px; }
.related h2 { font-size: 1.1em; margin-bottom: 15px; color: #FF6B00; }
.related-list { display: flex; flex-wrap: wrap; gap: 8px; }
.related-list a { background: #FF6B00; color: white; padding: 6px 12px; border-radius: 20px; text-decoration: none; font-size: 0.9em; }
.related-list a:hover { opacity: 0.8; }
.back-link { display: inline-block; margin-bottom: 20px; color: #FF6B00; text-decoration: none; }
.back-link:hover { text-decoration: underline; }
footer { text-align: center; padding: 20px; color: #666; font-size: 0.9em; }
.section-title { font-size: 1.4em; color: #FF6B00; border-bottom: 2px solid #FF6B00; padding-bottom: 8px; margin: 30px 0 20px 0; }
.gyo-section { margin-bottom: 25px; }
.gyo-heading { font-size: 1.1em; color: #333; background: #fff5ed; padding: 8px 15px; border-radius: 4px; margin-bottom: 12px; }
.intro { background: #fff5ed; padding: 20px; border-radius: 8px; margin-bottom: 20px; line-height: 1.8; color: #333; }
