
/* Contextual terminology V6.11 */
.term-help{border:0;border-bottom:1px dotted var(--accent,#5b6fd8);background:color-mix(in srgb,var(--accent,#5b6fd8) 7%,transparent);color:inherit;padding:0 .08em;border-radius:.28em;cursor:help;font:inherit;text-align:inherit;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;}
.term-help:hover,.term-help:focus-visible{background:color-mix(in srgb,var(--accent,#5b6fd8) 16%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#5b6fd8) 12%,transparent);outline:0}
.term-help[data-term-seen="true"]{border-bottom-style:solid}
.term-peek{position:fixed;z-index:9998;max-width:min(390px,calc(100vw - 24px));padding:14px 16px;border:1px solid color-mix(in srgb,var(--accent,#5b6fd8) 28%,var(--line,#d8dfec));border-radius:16px;background:color-mix(in srgb,var(--panel,#fff) 96%,transparent);color:var(--text,#172033);box-shadow:0 18px 48px rgba(10,18,35,.22);backdrop-filter:blur(14px);opacity:0;transform:translateY(8px) scale(.98);pointer-events:none;transition:opacity .16s ease,transform .16s ease;}
.term-peek.show{opacity:1;transform:translateY(0) scale(1)}
.term-peek strong{display:block;margin-bottom:4px}.term-peek small{display:block;color:var(--muted,#657086);margin-top:8px}
.term-overlay{position:fixed;inset:0;z-index:9999;background:rgba(6,12,24,.44);backdrop-filter:blur(5px);display:none;align-items:center;justify-content:center;padding:18px;}
.term-overlay.open{display:flex;animation:termFade .18s ease}
.term-dialog{width:min(720px,100%);max-height:min(82vh,860px);overflow:auto;border:1px solid var(--line,#d8dfec);border-radius:24px;background:var(--panel,#fff);color:var(--text,#172033);box-shadow:0 28px 90px rgba(0,0,0,.32);transform:translateY(12px);animation:termRise .22s ease forwards;}
.term-dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;gap:14px;padding:20px 22px 14px;background:color-mix(in srgb,var(--panel,#fff) 96%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line,#d8dfec)}
.term-dialog-head h2{margin:0;font-size:1.45rem}.term-dialog-head p{margin:4px 0 0;color:var(--muted,#657086)}
.term-close{margin-left:auto;border:1px solid var(--line,#d8dfec);background:var(--panel,#fff);color:inherit;width:40px;height:40px;border-radius:12px;cursor:pointer;font-size:1.2rem}
.term-dialog-body{padding:20px 22px 26px;display:grid;gap:14px}
.term-block{padding:15px 17px;border:1px solid var(--line,#d8dfec);border-radius:16px;background:color-mix(in srgb,var(--accent,#5b6fd8) 4%,var(--panel,#fff))}.term-block h3{font-size:.86rem;text-transform:uppercase;letter-spacing:.06em;color:var(--accent,#5b6fd8);margin:0 0 7px}.term-block p{margin:0}
.term-related{display:flex;flex-wrap:wrap;gap:8px}.term-related button{border:1px solid var(--line,#d8dfec);border-radius:999px;padding:7px 11px;background:var(--panel,#fff);color:inherit;cursor:pointer}.term-related button:hover{border-color:var(--accent,#5b6fd8)}
.term-toolbar{display:flex;gap:10px;flex-wrap:wrap}.term-toolbar button{border:1px solid var(--line,#d8dfec);border-radius:12px;padding:9px 12px;background:var(--panel,#fff);color:inherit;cursor:pointer}
.term-launcher{position:fixed;right:18px;bottom:18px;z-index:9996;border:1px solid color-mix(in srgb,var(--accent,#5b6fd8) 35%,var(--line,#d8dfec));border-radius:999px;padding:11px 15px;background:var(--panel,#fff);color:var(--text,#172033);box-shadow:0 10px 30px rgba(0,0,0,.18);cursor:pointer;font-weight:750}
.term-palette{position:fixed;inset:0;z-index:9999;display:none;background:rgba(6,12,24,.44);backdrop-filter:blur(5px);padding:18px;align-items:flex-start;justify-content:center}.term-palette.open{display:flex}.term-palette-box{margin-top:min(12vh,100px);width:min(760px,100%);max-height:78vh;overflow:hidden;background:var(--panel,#fff);color:var(--text,#172033);border:1px solid var(--line,#d8dfec);border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.32)}
.term-palette-head{display:flex;gap:10px;padding:16px;border-bottom:1px solid var(--line,#d8dfec)}.term-palette-head input{flex:1;min-width:0;border:1px solid var(--line,#d8dfec);border-radius:12px;background:var(--bg,#f4f7fb);color:inherit;padding:11px 13px;font:inherit}.term-results{max-height:60vh;overflow:auto;padding:10px}.term-result{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line,#d8dfec);background:transparent;color:inherit;padding:13px 12px;cursor:pointer;border-radius:10px}.term-result:hover{background:color-mix(in srgb,var(--accent,#5b6fd8) 8%,transparent)}.term-result strong,.term-result span{display:block}.term-result span{color:var(--muted,#657086);font-size:.92rem;margin-top:3px}
@keyframes termFade{from{opacity:0}to{opacity:1}}@keyframes termRise{to{transform:translateY(0)}}
@media(max-width:640px){.term-overlay{align-items:flex-end;padding:0}.term-dialog{width:100%;max-height:88vh;border-radius:24px 24px 0 0}.term-launcher{right:12px;bottom:12px}.term-peek{display:none!important}.term-dialog-head,.term-dialog-body{padding-left:16px;padding-right:16px}.term-palette{padding:0;align-items:flex-end}.term-palette-box{margin:0;width:100%;max-height:88vh;border-radius:24px 24px 0 0}}
@media(prefers-reduced-motion:reduce){.term-help,.term-peek,.term-overlay,.term-dialog{transition:none!important;animation:none!important}}

.term-status{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--accent,#3659d9) 10%,var(--panel,#fff));border:1px solid var(--line,#dce3ee)}
.term-block ul{margin:8px 0 0;padding-left:20px}.term-block li{margin:5px 0}

.term-mini-book{margin:0 0 16px;border:1px solid color-mix(in srgb,var(--accent,#3659d9) 35%,var(--line,#dce3ee));border-radius:16px;background:color-mix(in srgb,var(--accent,#3659d9) 6%,var(--panel,#fff));overflow:hidden}.term-mini-book>summary{cursor:pointer;padding:15px 16px;display:flex;justify-content:space-between;gap:12px;font-weight:800}.term-mini-book>summary small{font-weight:500;color:var(--muted,#667085)}.term-mini-content{padding:2px 16px 16px}.term-mini-content .term-block{background:var(--panel,#fff);border:1px solid var(--line,#dce3ee);border-radius:12px;padding:12px 14px;margin:10px 0}.term-mini-content ol{padding-left:22px}.term-mini-content li{margin:7px 0}@media(max-width:640px){.term-mini-book>summary{display:block}.term-mini-book>summary small{display:block;margin-top:4px}}

.term-relation-row{display:grid;grid-template-columns:120px 180px 1fr;gap:8px;align-items:start;padding:9px;margin:7px 0;border:1px solid var(--line,#dbe3ef);border-radius:10px}.term-relation-row>span{font-weight:800;color:var(--accent,#3559d6)}.term-relation-row small{color:var(--muted,#657089)}@media(max-width:650px){.term-relation-row{grid-template-columns:1fr}}

.term-lesson-intro{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:0 0 1rem;padding:.8rem 1rem;border-radius:14px;background:linear-gradient(135deg,rgba(64,105,255,.13),rgba(135,90,220,.10));border:1px solid var(--term-border,#cfd8e6)}.term-lesson-intro span{font-weight:800}.term-lesson-intro strong{font-size:.86rem;opacity:.75}.term-block p{max-width:78ch}.term-block h3{scroll-margin-top:5rem}

.term-why-section{
  margin:1rem 0 1.2rem;
  padding:1rem 1.1rem;
  border:1px solid color-mix(in srgb,var(--term-accent,#4f67d8) 28%,transparent);
  border-left:5px solid var(--term-accent,#4f67d8);
  border-radius:14px;
  background:color-mix(in srgb,var(--term-panel,#fff) 92%,var(--term-accent,#4f67d8) 8%);
}
.term-why-section h3{margin:0 0 .45rem;font-size:1rem}
.term-why-section p{margin:0;line-height:1.65}

.term-decision-layer{margin:1.1rem 0;padding:1rem;border:1px solid color-mix(in srgb,var(--term-accent,#4f67d8) 28%,transparent);border-radius:15px;background:color-mix(in srgb,var(--term-panel,#fff) 94%,var(--term-accent,#4f67d8) 6%)}
.term-decision-layer h3{margin:.1rem 0 .8rem}
.term-decision-layer details{margin:.55rem 0;border:1px solid color-mix(in srgb,var(--term-accent,#4f67d8) 18%,transparent);border-radius:11px;padding:.65rem .8rem;background:var(--term-panel,#fff)}
.term-decision-layer summary{cursor:pointer;font-weight:750}
.term-decision-layer p,.term-decision-layer ul{margin:.55rem 0}
.term-maturity{display:inline-block;padding:.4rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--term-accent,#4f67d8) 12%,transparent)}
