/* Reference glossary — self-contained, accessible, brand-teal, dark-mode aware. */
:root{
  --g-bg:#ffffff; --g-fg:#1a2424; --g-muted:#5a6b6b; --g-brand:#01696f; --g-brand-2:#0d9488;
  --g-surface:#f4f8f8; --g-border:#d8dede; --g-chip:#eef4f4; --g-mi:#475569;
  --g-max:1080px;
}
@media (prefers-color-scheme: dark){
  :root{ --g-bg:#0e1414; --g-fg:#e6eeed; --g-muted:#9fb3b1; --g-surface:#16201f; --g-border:#26302f; --g-chip:#1b2625; --g-mi:#9fb3b1; }
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--g-bg);color:var(--g-fg);font-family:'Atkinson Hyperlegible','Segoe UI',system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;}
a{color:var(--g-brand);}
.g-wrap{max-width:var(--g-max);margin:0 auto;padding:0 1.1rem;}

.g-top{background:linear-gradient(160deg,var(--g-surface),var(--g-bg));border-bottom:1px solid var(--g-border);padding:2.2rem 0 1.4rem;}
.g-eyebrow{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--g-brand);font-weight:700;}
.g-top h1{margin:.3rem 0 .4rem;font-size:2rem;line-height:1.15;}
.g-lead{margin:0;color:var(--g-muted);max-width:60ch;}
.g-lead strong{color:var(--g-fg);}

.g-controls{position:sticky;top:0;z-index:5;background:var(--g-bg);border-bottom:1px solid var(--g-border);padding:.8rem 0;}
.g-searchrow{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;}
#g-search{flex:1;min-width:220px;padding:.7rem .9rem;font-size:1rem;border:1px solid var(--g-border);border-radius:10px;background:var(--g-bg);color:var(--g-fg);}
#g-search:focus{outline:2px solid var(--g-brand);border-color:var(--g-brand);}
#g-count{color:var(--g-muted);font-size:.9rem;white-space:nowrap;}
.g-cats{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem;}
.g-chip{font:inherit;font-size:.82rem;padding:.32rem .7rem;border-radius:999px;border:1px solid var(--g-border);background:var(--g-chip);color:var(--g-fg);cursor:pointer;}
.g-chip:hover{border-color:var(--g-brand);}
.g-chip.on{background:var(--g-brand);color:#fff;border-color:var(--g-brand);}
.g-az{display:flex;flex-wrap:wrap;gap:.1rem;margin-top:.6rem;}
.g-az a{font-size:.82rem;font-weight:700;color:var(--g-brand);text-decoration:none;padding:.1rem .32rem;border-radius:6px;}
.g-az a:hover{background:var(--g-chip);}
.g-az a.off{color:var(--g-border);pointer-events:none;}

#g-list{padding:1.4rem 0 3rem;}
.g-letter{font-size:1.5rem;color:var(--g-brand);border-bottom:2px solid var(--g-border);padding-bottom:.2rem;margin:1.8rem 0 .8rem;scroll-margin-top:140px;}
.g-card{padding:1rem 0;border-top:1px solid var(--g-border);scroll-margin-top:140px;}
.g-card:first-of-type{border-top:none;}
.g-card.g-flash{animation:g-flash 1.6s ease-out;}
@keyframes g-flash{0%{background:rgba(1,105,111,.14);}100%{background:transparent;}}
.g-term{margin:0 0 .25rem;font-size:1.15rem;}
.g-term-en{font-weight:700;}
.g-term-mi{font-weight:400;color:var(--g-mi);font-size:.95rem;}
.g-cat{display:inline-block;font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;color:var(--g-brand);background:var(--g-chip);padding:.12rem .5rem;border-radius:6px;margin-bottom:.45rem;}
.g-def{margin:.35rem 0;}
.g-def-mi{color:var(--g-mi);font-size:.94rem;}
.g-mi-flag{font-size:.78rem;color:#92744a;font-style:italic;}
.g-empty{color:var(--g-muted);padding:2rem 0;}

.g-foot{border-top:1px solid var(--g-border);padding:1.6rem 0;color:var(--g-muted);font-size:.86rem;}
.g-foot a{color:var(--g-brand);}
@media (max-width:560px){ .g-top h1{font-size:1.6rem;} .g-letter{scroll-margin-top:180px;} .g-card{scroll-margin-top:180px;} }
