.reader-dictionary-toggle,.dictionary-selection{border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);padding:9px 13px;font:inherit;font-size:.85rem;cursor:pointer}.reader-dictionary-toggle[aria-expanded=true]{background:var(--ink);color:var(--surface)}
.reader-dictionary{position:absolute;z-index:15;right:16px;top:84px;width:min(420px,calc(100% - 32px));max-height:calc(100% - 110px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);padding:18px;box-sizing:border-box;box-shadow:0 16px 55px #102e3740;font-size:.94rem;line-height:1.55}.reader-dictionary[hidden],.dictionary-selection[hidden]{display:none}
.dictionary-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700}.dictionary-top button{border:0;background:none;color:inherit;font:inherit;font-size:.8rem;cursor:pointer;padding:8px}.dictionary-form{display:flex;gap:6px;margin-top:12px}.dictionary-form input{min-width:0;flex:1;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface);color:var(--ink);font:inherit}.dictionary-form button{border:0;border-radius:12px;padding:10px;background:var(--ink);color:var(--surface);font:inherit;cursor:pointer}.dictionary-suggestions{display:flex;gap:8px;overflow-x:auto;padding:10px 0;scrollbar-width:thin}.dictionary-suggestions button{flex:none;border:1px solid var(--line);border-radius:20px;padding:7px 12px;font:inherit;color:var(--ink);background:var(--surface);cursor:pointer}.dictionary-sense{border:1px solid var(--line);border-radius:14px;margin:12px 0;padding:13px}.dictionary-sense h4{margin:0;font-size:.85rem}.dictionary-sense p{margin:8px 0 0}.dictionary-likely{border-width:2px;border-color:var(--accent)}.dictionary-hint,.dictionary-source{font-size:.78rem;line-height:1.55}.dictionary-source a{color:inherit;text-decoration:underline}.dictionary-old{font-size:.7rem;border-radius:8px;padding:3px 7px;background:var(--wash);display:inline-block;margin-top:7px}.dictionary-context{border-left:3px solid var(--line);margin:8px 0;padding-left:12px;font-style:italic;font-size:.85rem}.dictionary-context-hint{font-size:.82rem}.dictionary-selection{position:fixed;z-index:20;box-shadow:0 4px 14px #102e3730}.reader-dictionary :focus-visible,.dictionary-selection:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media(max-width:620px){.reader-header{flex-wrap:wrap;gap:8px}.reader-header-actions{margin-left:auto}.reader-dictionary{top:115px;max-height:calc(100% - 130px);padding:14px}.reader-dictionary-toggle{font-size:.76rem;padding:9px}.dictionary-form{flex-wrap:wrap}.dictionary-form input{width:60%}}

.dictionary-likely{background:color-mix(in srgb,var(--accent,#628e7e) 16%,var(--surface));border:2px solid var(--accent,#628e7e);box-shadow:inset 4px 0 var(--accent,#628e7e)}.dictionary-match{display:block;margin-bottom:10px;font-size:.85rem}.dictionary-likely p{font-weight:600}

/* The contextual answer remains distinct in light, dark and seasonal palettes. */
.reader-dictionary .dictionary-sense:is(.dictionary-likely,.dictionary-confirmed){border:3px solid #b77824;background:#ffe5a6;color:#322713;box-shadow:inset 5px 0 #b77824,0 3px 14px #aa6c211a}.dictionary-match{color:inherit;padding:4px 0}.dictionary-confirmed h4{font-weight:800}.dictionary-context{white-space:normal;overflow-wrap:break-word;line-height:1.65}.reader-dark .dictionary-likely,.reader-dark .dictionary-confirmed,[data-theme=dark] .dictionary-likely,[data-theme=dark] .dictionary-confirmed,.dark .dictionary-likely,.dark .dictionary-confirmed{background:#443821;color:#fff1cf;border-color:#efba66;box-shadow:inset 5px 0 #efba66,0 3px 14px #0003}

.reader-dictionary .dictionary-sense:is(.dictionary-likely,.dictionary-confirmed) p{font-weight:650;font-size:1rem;line-height:1.65}
.reader-dark .reader-dictionary .dictionary-sense:is(.dictionary-likely,.dictionary-confirmed),[data-theme=dark] .reader-dictionary .dictionary-sense:is(.dictionary-likely,.dictionary-confirmed),.dark .reader-dictionary .dictionary-sense:is(.dictionary-likely,.dictionary-confirmed){background:#443821;color:#fff1cf;border-color:#efba66;box-shadow:inset 5px 0 #efba66,0 3px 14px #0003}
.dictionary-context-hint{padding:10px 12px;border-radius:10px;background:var(--wash,#f3f0e8)}

/* Contrast pairs stay explicit, even if the reader uses a different palette. */
.reader-dictionary .dictionary-context-hint{background:#fff0ca;color:#392a13;border:1px solid #b77824;opacity:1}
.reader-dictionary .dictionary-sense:is(.dictionary-likely,.dictionary-confirmed) :is(p,h4,strong,small){color:inherit;opacity:1}
.reader-dictionary .dictionary-reason{display:block;margin-top:10px;line-height:1.5}
.reader-dark .reader-dictionary .dictionary-context-hint,[data-theme=dark] .reader-dictionary .dictionary-context-hint,.dark .reader-dictionary .dictionary-context-hint{background:#443821;color:#fff1cf;border-color:#efba66}
.reader-dictionary .dictionary-sense[data-confidence=faible]{border-style:dashed}
