.word-token{display:inline;border:0;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:#7fa38d;text-underline-offset:3px;border-radius:2px}
.word-token:hover,.word-token:focus-visible{color:var(--green);background:#e8f4e9;outline:0}
#word-popover{position:fixed;z-index:1000;width:min(330px,calc(100vw - 20px));max-height:min(75vh,calc(100dvh - 20px));overflow:auto;background:#fff;border:1px solid #dce5dc;border-radius:16px;box-shadow:0 16px 55px #1d39252b;padding:17px 18px;color:var(--ink);overscroll-behavior:contain}
.popover-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.popover-top small{color:#8a958e;font-size:10px;font-weight:800;letter-spacing:.4px}
.popover-top h3{font:700 21px Manrope;margin:5px 0 12px;overflow-wrap:anywhere}
.popover-close{border:0;background:#f0f3ed;color:#6e7a72;border-radius:50%;width:28px;height:28px;font-size:19px;line-height:1;cursor:pointer;flex:none}
.popover-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#87928c;font-weight:800;margin-top:11px}
.popover-meaning{font:700 16px/1.5 Manrope;color:var(--green);margin:5px 0 8px}
.popover-context{font-size:12px;line-height:1.65;color:#4d5a53;margin:6px 0}
.popover-context-translation{font-size:12px;line-height:1.6;color:#79867e;background:#f7f9f5;border-radius:9px;padding:9px 10px;margin:8px 0}
.popover-loading{font-size:13px;color:#7e8983;padding:15px 0}
.popover-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #edf0eb;margin-top:13px;padding:12px 0 3px;display:flex;align-items:center;justify-content:space-between}
.popover-actions a{color:#60766b;font-size:11px;text-decoration:underline}
.star-word{border:0;background:#f1f4e7;color:#5e693e;border-radius:10px;padding:8px 12px;font-size:19px;line-height:1;cursor:pointer}
.star-word.saved{font-size:12px;font-weight:800;color:#286c59;background:#e5f3e8}
.saved-words{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:22px}
.saved-word{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 21px;box-shadow:var(--shadow)}
.saved-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.saved-heading h2{font:700 21px Manrope;margin:0;overflow-wrap:anywhere}
.saved-heading small{font-size:10px;color:#8a958e}
.remove-word{margin-left:auto;border:0;background:#f5f6f2;border-radius:8px;padding:7px 10px;color:#8a716c;font:600 11px 'DM Sans';cursor:pointer}
.saved-meaning-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#8b958e;font-weight:800;margin-top:15px}
.saved-meaning{font:600 15px/1.5 Manrope;color:var(--green);margin:5px 0}
.saved-context,.saved-context-translation{font-size:12px;line-height:1.65;color:#5b6760;margin:6px 0 0}
.saved-context-translation{color:#849088;background:#f7f9f5;padding:9px 10px;border-radius:9px}
.opened-words{margin:36px 0 20px}
.opened-words h2{font:700 20px Manrope;margin-bottom:5px}
.opened-words>p{font-size:13px;color:#828d86;margin:0 0 13px}
.opened-word{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 18px;margin:9px 0}
.opened-word h3{font:700 16px Manrope;margin:0 0 8px}
.opened-word p{font-size:12px;line-height:1.65;color:#637068;margin:5px 0}
.opened-word p b{color:#394d42}
@media(max-width:700px){.saved-words{grid-template-columns:1fr}.saved-word{padding:18px}}
.nav-link.avatar-link{padding:5px;background:transparent}
.nav-link.avatar-link.active,.nav-link.avatar-link:hover{background:transparent;color:var(--green)}
.nav-avatar.profile-avatar-small{width:34px;height:34px;margin:0;border:2px solid #fff;box-shadow:0 0 0 1px #dce7d8;font:800 14px Manrope;background:var(--lime);color:#35432f}
.profile-avatar:not(.profile-avatar-small){border-radius:50%;flex:none}
@media(max-width:650px){.topbar{gap:6px;padding:0 12px}.brand{gap:7px;font-size:18px}.nav{gap:0;flex:1;justify-content:flex-end}.nav-link{padding:8px 6px;font-size:10px;white-space:nowrap}.nav-link.avatar-link{padding:4px}.nav-avatar.profile-avatar-small{width:31px;height:31px}#word-popover{padding:15px 16px;width:min(320px,calc(100vw - 20px))}.popover-context{font-size:13px;line-height:1.55}.popover-meaning{font-size:17px}}
