/* Text-first reference page; entries stay readable without animation or JS. */
.glossary-theme { background:#0c1118; color:#e1e5ec; }
.glossary-intro { padding:160px 0 75px; background:radial-gradient(ellipse at 85% 0%,#263647,transparent 65%),linear-gradient(135deg,#111a25,#0c1118); border-bottom:1px solid #b8984f55; }
.glossary-intro h1 { font-size:clamp(2.8rem,7vw,5rem); letter-spacing:.15em; margin:24px 0 8px; }
.glossary-kicker { font:.8rem var(--font-en); letter-spacing:.18em; color:#c1b18d; }
.glossary-english { font:1.3rem var(--font-en); color:var(--color-gold); letter-spacing:.3em; margin-bottom:28px; }
.glossary-notice { margin-top:24px; padding:18px 22px; border-left:2px solid var(--color-gold); background:#b8984f0c; }
.glossary-section { scroll-margin-top:80px; }
.glossary-section .section-title { font-size:clamp(2rem,4vw,3rem); }
.glossary-section .section-title span { display:block; font:1rem var(--font-jp); margin-top:12px; }
.glossary-search { max-width:850px; margin:0 auto 32px; }
.glossary-search label { display:block; margin-bottom:12px; }
.search-row { display:flex; gap:12px; }
.search-row input { flex:1; min-width:0; background:#15202d; border:1px solid #7e8c9c; color:#fff; padding:14px 16px; font:inherit; font-size:16px; border-radius:0; }
.search-row input::placeholder { color:#adb8c7; }
.search-row button { background:#293241; border:1px solid var(--color-gold); color:#f0e1c3; font:inherit; padding:12px 18px; cursor:pointer; }
#term-count { color:#bdc8d7; margin-top:12px; }
.term-index { display:flex; flex-wrap:wrap; gap:10px; margin:0 auto 40px; max-width:1050px; }
.term-index a { padding:8px 12px; font-size:.9rem; border:1px solid #536071; color:#d6e2ef; background:#14202c; }
.term-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.term-entry { min-width:0; padding:28px; border:1px solid #394656; border-top:2px solid var(--color-gold-dim); background:linear-gradient(130deg,#192331,#101923); scroll-margin-top:100px; }
.term-entry:target { border-color:var(--color-gold); }
.term-entry dt { font-size:clamp(1.15rem,2vw,1.5rem); margin-bottom:18px; }
.term-entry dt a { color:#dfc68f; text-decoration:underline; text-underline-offset:5px; }
.term-entry dd { margin:0; line-height:2; overflow-wrap:anywhere; }
.glossary-theme [hidden] { display:none!important; }
.glossary-theme a:focus-visible,.glossary-theme button:focus-visible,.glossary-theme input:focus-visible { outline:2px solid #e1c483; outline-offset:4px; }
.glossary-theme .mobile-nav { overflow-y:auto; height:100dvh; padding:90px 20px 35px; }
@media(max-width:768px) { .glossary-intro { padding:120px 0 55px; } .glossary-section { padding:60px 0; } .term-list { grid-template-columns:1fr; } .term-entry { padding:24px 22px; } .search-row { flex-direction:column; } }
