:root{--v-ink:#0b1736;--v-muted:#64748b;--v-line:#e2e8f0;--v-brand:#4f46e5;--v-brand2:#7c3aed;--v-ok:#16a34a;--v-warn:#f59e0b;--v-danger:#dc2626}.lop-vocab-body{margin:0;background:linear-gradient(180deg,#f8fbff,#f5f7ff 45%,#fff);color:var(--v-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.lop-vocab-shell{width:min(1240px,calc(100% - 28px));margin:0 auto;min-height:100vh}.lop-vocab-skip{position:fixed;left:10px;top:-50px;z-index:9999;padding:9px 12px;background:#fff}.lop-vocab-skip:focus{top:10px}.lop-vocab-topbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}.lop-vocab-brand{display:flex;align-items:center;gap:10px;color:var(--v-ink);text-decoration:none}.lop-vocab-brand img{width:44px;height:44px;border-radius:14px}.lop-vocab-brand span{display:flex;flex-direction:column}.lop-vocab-brand strong{font-size:17px}.lop-vocab-brand small{color:var(--v-muted)}.lop-vocab-top-actions{display:flex;align-items:center;gap:10px}.lop-vocab-top-actions>a,.lop-vocab-top-actions>span,.lop-vocab-top-actions>button{min-height:38px;display:inline-flex;align-items:center;padding:8px 11px;border:1px solid var(--v-line);border-radius:12px;background:#fff;color:#334155;text-decoration:none;font-weight:800}.lop-vocab-top-actions>button{width:42px;justify-content:center;cursor:pointer}.lop-vocab-tabs{display:flex;gap:7px;padding:7px;border:1px solid var(--v-line);border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.04)}.lop-vocab-tabs a{flex:1;min-height:42px;display:flex;align-items:center;justify-content:center;padding:8px 11px;border-radius:12px;color:#475569;text-decoration:none;font-size:13px;font-weight:900}.lop-vocab-tabs a:hover,.lop-vocab-tabs a:focus-visible{background:#f1f5f9;color:#0f172a}.lop-vocab-tabs a.is-active{color:#fff;background:linear-gradient(135deg,var(--v-brand),#6366f1);box-shadow:0 8px 18px rgba(79,70,229,.22)}.lop-vocab-main{display:grid;gap:15px;padding:17px 0 32px}.lop-vocab-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.lop-vocab-summary article{display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid var(--v-line);border-radius:17px;background:#fff}.lop-vocab-summary article>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#eef2ff;font-size:21px}.lop-vocab-summary small{display:block;color:var(--v-muted);font-size:11px;font-weight:800}.lop-vocab-summary strong{display:block;margin-top:2px;font-size:19px}.lop-vocab-hero{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:18px;padding:26px;border:1px solid #c7d2fe;border-radius:28px;background:radial-gradient(circle at 90% 12%,rgba(99,102,241,.17),transparent 28%),linear-gradient(135deg,#fff,#eef2ff 57%,#ecfeff);box-shadow:0 18px 45px rgba(79,70,229,.10)}.lop-vocab-hero-icon{width:76px;height:76px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(135deg,#4f46e5,#7c3aed);font-size:36px;box-shadow:0 13px 28px rgba(79,70,229,.25)}.lop-vocab-hero>div>span,.lop-vocab-page-head>div>span,.lop-vocab-section-title>span{color:#4f46e5;font-size:11px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.lop-vocab-hero h1,.lop-vocab-page-head h1{margin:4px 0 6px;font-size:clamp(27px,3vw,38px);line-height:1.12}.lop-vocab-hero p,.lop-vocab-page-head p{margin:0;color:var(--v-muted);font-weight:650}.lop-vocab-hero-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.lop-vocab-hero-stats span{padding:7px 9px;border-radius:11px;background:rgba(255,255,255,.78);color:#475569;font-size:12px;font-weight:800}.lop-vocab-primary,.lop-vocab-hero>button,.lop-vocab-game-grid button,.lop-vocab-challenges form button,.lop-vocab-set-actions button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 16px;border:1px solid #4338ca;border-radius:14px;color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);font-size:14px;font-weight:950;cursor:pointer;box-shadow:0 10px 23px rgba(79,70,229,.23)}.lop-vocab-primary:hover,.lop-vocab-hero>button:hover,.lop-vocab-game-grid button:hover{transform:translateY(-1px);box-shadow:0 13px 26px rgba(79,70,229,.28)}.lop-vocab-primary:disabled,.lop-vocab-hero>button:disabled{opacity:.55;cursor:not-allowed;transform:none}.lop-vocab-assignments,.lop-vocab-notifications,.lop-vocab-leaderboard,.lop-vocab-challenges{padding:18px;border:1px solid var(--v-line);border-radius:22px;background:#fff}.lop-vocab-section-title{margin-bottom:11px}.lop-vocab-section-title h2{margin:3px 0 0;font-size:21px}.lop-vocab-assignments>div,.lop-vocab-notifications>div,.lop-vocab-challenge-list{display:grid;gap:8px}.lop-vocab-assignments article,.lop-vocab-notifications article,.lop-vocab-challenge-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #eef2f7;border-radius:14px;background:#fbfdff}.lop-vocab-assignments strong,.lop-vocab-notifications strong,.lop-vocab-challenge-list strong{display:block}.lop-vocab-assignments small,.lop-vocab-challenge-list small{display:block;margin-top:3px;color:var(--v-muted)}.lop-vocab-assignments button,.lop-vocab-notifications button,.lop-vocab-notifications a,.lop-vocab-challenge-list button{padding:8px 10px;border:1px solid #c7d2fe;border-radius:11px;background:#eef2ff;color:#3730a3;text-decoration:none;font-weight:900;cursor:pointer}.lop-vocab-assignments article.is-locked{opacity:.72}.lop-vocab-session{padding:18px;border:1px solid #c7d2fe;border-radius:24px;background:#fff;box-shadow:0 16px 36px rgba(79,70,229,.08)}.lop-vocab-session-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}.lop-vocab-session-head h2{margin:0}.lop-vocab-progress{min-width:180px}.lop-vocab-progress span{display:block;margin-bottom:4px;color:var(--v-muted);font-size:11px;font-weight:900;text-align:right}.lop-vocab-progress progress{width:100%;height:9px;border:0;border-radius:999px;overflow:hidden}.lop-vocab-progress progress::-webkit-progress-bar{background:#e2e8f0}.lop-vocab-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#4f46e5,#22c55e)}.lop-vocab-card{max-width:760px;margin:0 auto;display:grid;gap:13px;padding:24px;border:1px solid var(--v-line);border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff);text-align:center}.lop-vocab-card-top{display:flex;justify-content:space-between;align-items:center;color:var(--v-muted);font-size:12px;font-weight:850}.lop-vocab-card-top button{border:0;background:transparent;color:#7c3aed;cursor:pointer}.lop-vocab-card-image{width:min(280px,100%);max-height:220px;object-fit:cover;margin:auto;border-radius:18px}.lop-vocab-card h2{margin:0;font-size:clamp(28px,4vw,43px)}.lop-vocab-audio-btn{justify-self:center;padding:8px 11px;border:1px solid #c7d2fe;border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:900}.lop-vocab-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lop-vocab-option{min-height:56px;padding:10px;border:1px solid #cbd5e1;border-radius:14px;background:#fff;color:#0f172a;font-size:15px;font-weight:850;cursor:pointer}.lop-vocab-option:hover,.lop-vocab-option:focus-visible{border-color:#818cf8;background:#eef2ff}.lop-vocab-option.is-correct{border-color:#22c55e;background:#dcfce7;color:#166534}.lop-vocab-option.is-wrong{border-color:#fb7185;background:#fff1f2;color:#9f1239}.lop-vocab-option.is-image{min-height:130px}.lop-vocab-option.is-image img{width:100%;height:110px;object-fit:cover;border-radius:10px}.lop-vocab-feedback{padding:13px;border-radius:15px;background:#f8fafc;text-align:left}.lop-vocab-feedback strong{font-size:18px}.lop-vocab-rating{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.lop-vocab-rating button{padding:9px;border:1px solid #cbd5e1;border-radius:11px;background:#fff;font-weight:850;cursor:pointer}.lop-vocab-complete{text-align:center;padding:30px}.lop-vocab-complete>span{font-size:46px}.lop-vocab-complete h2{font-size:29px}.lop-vocab-complete a{display:inline-flex;padding:10px 14px;border-radius:12px;color:#fff;background:#4f46e5;text-decoration:none;font-weight:900}.lop-vocab-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:6px 2px}.lop-vocab-mine-filter{display:grid;grid-template-columns:minmax(220px,1fr) 170px auto;gap:8px}.lop-vocab-mine-filter input,.lop-vocab-mine-filter select,.lop-vocab-mine-filter button,.lop-vocab-challenges form input,.lop-vocab-challenges form select,.lop-vocab-challenges form button,.lop-vocab-modal input,.lop-vocab-modal textarea{min-height:43px;padding:9px 11px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;box-sizing:border-box}.lop-vocab-my-grid,.lop-vocab-set-grid,.lop-vocab-game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.lop-vocab-my-grid>article,.lop-vocab-set-grid>article,.lop-vocab-game-grid>article{display:flex;flex-direction:column;gap:9px;padding:16px;border:1px solid var(--v-line);border-radius:19px;background:#fff}.lop-vocab-my-grid h2,.lop-vocab-set-grid h2,.lop-vocab-game-grid h2{margin:0;font-size:21px}.lop-vocab-ipa{color:#6366f1!important}.lop-vocab-word-top{display:flex;justify-content:space-between;gap:8px;color:var(--v-muted);font-size:11px;font-weight:900}.lop-vocab-state{padding:4px 7px;border-radius:999px;background:#f1f5f9}.lop-vocab-state.is-mastered{background:#dcfce7;color:#166534}.lop-vocab-my-grid p{margin:0;color:var(--v-muted)}.lop-vocab-my-grid dl{margin:0}.lop-vocab-my-grid dl div{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f1f5f9;font-size:12px}.lop-vocab-my-grid button{align-self:flex-start;padding:7px 9px;border:0;border-radius:10px;background:#eef2ff;color:#3730a3;font-weight:900}.lop-vocab-media-missing{color:#94a3b8;font-size:12px}.lop-vocab-set-grid img,.lop-vocab-set-fallback{width:100%;height:150px;object-fit:cover;border-radius:14px}.lop-vocab-set-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#eef2ff,#ecfeff);font-size:50px}.lop-vocab-set-grid>article>div:nth-child(2){flex:1}.lop-vocab-set-grid>article>div>span{color:#4f46e5;font-size:11px;font-weight:900}.lop-vocab-set-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.lop-vocab-set-actions button:first-child{color:#3730a3;background:#eef2ff;box-shadow:none}.lop-vocab-set-grid>article.is-locked{opacity:.75}.lop-vocab-set-grid>article.is-locked>a{align-self:flex-start;padding:8px 10px;border-radius:10px;color:#fff;background:#4f46e5;text-decoration:none;font-weight:900}.lop-vocab-game-grid>article>span{font-size:37px}.lop-vocab-game-grid p{flex:1;color:var(--v-muted)}.lop-vocab-challenges form{display:grid;grid-template-columns:1fr 190px 130px auto;gap:8px;margin-bottom:12px}.lop-vocab-challenges form label{display:grid;gap:4px;color:#475569;font-size:11px;font-weight:900}.lop-vocab-leaderboard ol{margin:0;padding:0;list-style:none}.lop-vocab-leaderboard li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #f1f5f9}.lop-vocab-leaderboard li>b{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#eef2ff;color:#3730a3}.lop-vocab-leaderboard>small{display:block;margin-top:8px;color:var(--v-muted)}.lop-vocab-modal{width:min(640px,calc(100% - 24px));max-height:85vh;padding:0;border:0;border-radius:22px;background:transparent}.lop-vocab-modal::backdrop{background:rgba(15,23,42,.52);backdrop-filter:blur(4px)}.lop-vocab-modal-card{position:relative;display:grid;gap:11px;padding:22px;border-radius:22px;background:#fff}.lop-vocab-modal-card>span{color:#4f46e5;font-size:11px;font-weight:950;text-transform:uppercase}.lop-vocab-modal-card h2{margin:0}.lop-vocab-modal-card p{margin:0;color:var(--v-muted)}.lop-vocab-modal-close{position:absolute;right:12px;top:12px;width:38px;height:38px;border:0;border-radius:12px;background:#f1f5f9;font-size:22px}.lop-vocab-modal-card>[data-vocab-bank-results]{display:grid;gap:7px;max-height:360px;overflow:auto}.lop-vocab-modal-card>[data-vocab-bank-results]>article{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border:1px solid #e2e8f0;border-radius:13px}.lop-vocab-modal-card>[data-vocab-bank-results] img,.lop-vocab-modal-card>[data-vocab-bank-results]>article>span{width:48px;height:48px;display:grid;place-items:center;object-fit:cover;border-radius:11px;background:#eef2ff}.lop-vocab-modal-card>[data-vocab-bank-results] strong{display:block}.lop-vocab-modal-card>[data-vocab-bank-results] small{display:block;color:var(--v-muted)}.lop-vocab-modal-card>[data-vocab-bank-results] p{margin-top:3px}.lop-vocab-modal-card>[data-vocab-bank-results] button{padding:7px 9px;border:1px solid #c7d2fe;border-radius:10px;background:#eef2ff;color:#3730a3;font-weight:900}.lop-vocab-candidate-box{display:grid;gap:7px;padding:12px;border-radius:14px;background:#fffbeb}.lop-vocab-notifications article.is-unread{border-color:#a5b4fc;background:#eef2ff}.lop-vocab-footer{display:flex;justify-content:space-between;gap:16px;padding:18px 0 28px;color:var(--v-muted);font-size:12px}.lop-vocab-footer a{color:#4f46e5;font-weight:900}.lop-vocab-empty{padding:24px;color:var(--v-muted);text-align:center}.lop-vocab-toast{position:fixed;right:18px;bottom:18px;z-index:10000;max-width:410px;padding:12px 16px;border-radius:13px;color:#fff;background:#166534;box-shadow:0 16px 35px rgba(15,23,42,.24);font-weight:850}.lop-vocab-toast.is-error{background:#991b1b}.lop-vocab-body button:focus-visible,.lop-vocab-body a:focus-visible,.lop-vocab-body input:focus,.lop-vocab-body select:focus,.lop-vocab-body textarea:focus{outline:3px solid rgba(59,130,246,.34);outline-offset:3px}
@media(max-width:900px){.lop-vocab-summary{grid-template-columns:repeat(2,1fr)}.lop-vocab-hero{grid-template-columns:64px minmax(0,1fr)}.lop-vocab-hero-icon{width:64px;height:64px}.lop-vocab-hero>button{grid-column:1/-1;width:100%}.lop-vocab-my-grid,.lop-vocab-set-grid,.lop-vocab-game-grid{grid-template-columns:repeat(2,1fr)}.lop-vocab-challenges form{grid-template-columns:1fr 1fr}.lop-vocab-challenges form button{grid-column:1/-1}.lop-vocab-top-actions>span{display:none}}
@media(max-width:600px){.lop-vocab-shell{width:min(100% - 14px,1240px)}.lop-vocab-topbar{min-height:62px}.lop-vocab-brand img{width:40px;height:40px}.lop-vocab-top-actions>a{display:none}.lop-vocab-tabs{overflow-x:auto;justify-content:flex-start}.lop-vocab-tabs a{flex:0 0 auto;min-width:112px}.lop-vocab-summary{gap:7px}.lop-vocab-summary article{padding:10px;gap:8px}.lop-vocab-summary article>span{width:38px;height:38px}.lop-vocab-hero{grid-template-columns:1fr;padding:18px;border-radius:22px}.lop-vocab-hero-icon{width:56px;height:56px;border-radius:18px}.lop-vocab-hero h1,.lop-vocab-page-head h1{font-size:27px}.lop-vocab-assignments,.lop-vocab-notifications,.lop-vocab-leaderboard,.lop-vocab-challenges,.lop-vocab-session{padding:13px;border-radius:18px}.lop-vocab-session-head{display:grid}.lop-vocab-progress{min-width:0}.lop-vocab-options,.lop-vocab-rating,.lop-vocab-my-grid,.lop-vocab-set-grid,.lop-vocab-game-grid,.lop-vocab-set-actions{grid-template-columns:1fr}.lop-vocab-card{padding:17px}.lop-vocab-page-head{display:grid;align-items:start}.lop-vocab-mine-filter{grid-template-columns:1fr}.lop-vocab-challenges form{grid-template-columns:1fr}.lop-vocab-assignments article,.lop-vocab-notifications article,.lop-vocab-challenge-list article{align-items:flex-start;flex-direction:column}.lop-vocab-footer{display:grid}.lop-vocab-modal-card{padding:18px}.lop-vocab-modal-card>[data-vocab-bank-results]>article{grid-template-columns:42px minmax(0,1fr)}.lop-vocab-modal-card>[data-vocab-bank-results] button{grid-column:1/-1;width:100%}}
@media(prefers-reduced-motion:reduce){.lop-vocab-body *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.lop-vocab-primary:hover,.lop-vocab-hero>button:hover,.lop-vocab-game-grid button:hover{transform:none}}
.lop-vocab-game-grid .is-word-chain{background:linear-gradient(145deg,#fff7ed,#fff,#f0fdf4)}
.lop-vocab-chain-log{max-height:280px;overflow:auto;display:grid;gap:8px;margin:12px 0;padding:10px;border-radius:14px;background:#f8fafc}
.lop-vocab-chain-log p{margin:0;padding:9px 10px;border-radius:11px;background:#fff;color:#334155;font-size:13px;line-height:1.4}
.lop-vocab-chain-log p.is-complete{color:#166534;background:#dcfce7;font-weight:800}
.lop-vocab-result-count{margin:8px 0 12px;color:#64748b;font-size:12px;font-weight:800}.lop-vocab-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;padding:12px 14px;border:1px solid #e2e8f0;border-radius:15px;background:#fff}.lop-vocab-pagination>span{color:#64748b;font-size:12px;font-weight:800}.lop-vocab-pagination>div{display:flex;gap:8px}.lop-vocab-pagination a{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:8px 12px;border:1px solid #c7d2fe;border-radius:11px;color:#3730a3;background:#eef2ff;text-decoration:none;font-size:12px;font-weight:900}.lop-vocab-pagination a:hover,.lop-vocab-pagination a:focus-visible{border-color:#818cf8;background:#e0e7ff}.lop-vocab-pagination a:focus-visible{outline:3px solid rgba(59,130,246,.3);outline-offset:2px}@media(max-width:520px){.lop-vocab-pagination{align-items:stretch;flex-direction:column}.lop-vocab-pagination>div{display:grid;grid-template-columns:1fr 1fr}.lop-vocab-pagination a{width:100%}}

/* v2.8.570: Vocabulary uses the shared LOP Streak member shell and navigation. */
.lop-vocabulary-body{background:linear-gradient(180deg,#f7faff 0,#f8fafc 38%,#fff 100%);}
.lop-vocabulary-body .lop-vocab-shell{width:min(1240px,calc(100% - 24px));max-width:1240px;margin:0 auto;}
.lop-vocabulary-body .lop-vocab-main{width:100%;max-width:none;margin:0;gap:16px;padding:14px 0 28px;}
.lop-vocab-module-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border:1px solid #dbeafe;border-radius:24px;background:radial-gradient(circle at 92% 12%,rgba(99,102,241,.16),transparent 28%),linear-gradient(135deg,#fff,#f5f3ff 58%,#ecfeff);box-shadow:0 16px 38px rgba(79,70,229,.09);}
.lop-vocab-module-title{min-width:0;display:flex;align-items:center;gap:14px;}
.lop-vocab-module-icon{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:19px;background:linear-gradient(135deg,#4f46e5,#7c3aed);font-size:28px;box-shadow:0 11px 24px rgba(79,70,229,.23);}
.lop-vocab-module-title>div{min-width:0;}
.lop-vocab-module-title>div>span{display:block;color:#4f46e5;font-size:10px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;}
.lop-vocab-module-title h1{margin:3px 0 5px;color:#0b1736;font-size:clamp(24px,3vw,34px);line-height:1.12;font-weight:950;}
.lop-vocab-module-title p{margin:0;color:#64748b;font-size:13px;line-height:1.45;font-weight:700;}
.lop-vocab-module-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;}
.lop-vocab-module-actions>a,.lop-vocab-module-actions>button,.lop-vocab-user-chip{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 11px;border:1px solid #dbe3f0;border-radius:12px;color:#334155;background:#fff;text-decoration:none;font-size:12px;font-weight:900;box-sizing:border-box;}
.lop-vocab-module-actions>a:hover,.lop-vocab-module-actions>button:hover{color:#3730a3;border-color:#a5b4fc;background:#eef2ff;transform:translateY(-1px);}
.lop-vocab-module-actions>a:active,.lop-vocab-module-actions>button:active{transform:none;}
.lop-vocab-module-actions>button{cursor:pointer;}
.lop-vocab-user-chip{color:#475569;background:rgba(255,255,255,.78);}
.lop-vocabulary-body .lop-vocab-tabs{position:sticky;top:78px;z-index:20;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:8px;border-color:#dbe3f0;border-radius:19px;background:rgba(255,255,255,.95);box-shadow:0 11px 28px rgba(15,23,42,.07);backdrop-filter:blur(12px);}
body.admin-bar.lop-vocabulary-body .lop-vocab-tabs{top:110px;}
.lop-vocabulary-body .lop-vocab-tabs a{min-width:0;min-height:54px;display:flex;align-items:center;justify-content:flex-start;gap:9px;padding:8px 10px;text-align:left;}
.lop-vocabulary-body .lop-vocab-tabs a>span:first-child{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#f1f5f9;font-size:17px;}
.lop-vocabulary-body .lop-vocab-tabs a>span:last-child{min-width:0;display:flex;flex-direction:column;gap:2px;}
.lop-vocabulary-body .lop-vocab-tabs strong{color:inherit;font-size:12px;line-height:1.2;font-weight:950;}
.lop-vocabulary-body .lop-vocab-tabs small{overflow:hidden;color:#64748b;font-size:10px;line-height:1.25;font-weight:750;text-overflow:ellipsis;white-space:nowrap;}
.lop-vocabulary-body .lop-vocab-tabs a.is-active small{color:rgba(255,255,255,.85);}
.lop-vocabulary-body .lop-vocab-tabs a.is-active>span:first-child{background:rgba(255,255,255,.18);}
.lop-vocabulary-body .lop-vocab-summary article{box-shadow:0 8px 20px rgba(15,23,42,.035);}
.lop-vocabulary-body .lop-vocab-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:4px;padding:18px 4px 28px;border-top:1px solid #e2e8f0;}
.lop-vocab-footer>div{display:flex;flex-direction:column;gap:3px;}
.lop-vocab-footer strong{color:#0b1736;font-size:13px;}
.lop-vocab-footer span{color:#64748b;}
.lop-vocab-footer nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.lop-vocab-footer nav a{padding:7px 9px;border-radius:10px;background:#eef2ff;text-decoration:none;}
.lopsp-main-nav .lopsp-nav-submenu a.lopsp-nav-highlight-vocabulary{background:linear-gradient(135deg,#f5f3ff,#ecfeff)!important;border-color:#c4b5fd!important;}
.lopsp-main-nav .lopsp-nav-submenu a.lopsp-nav-highlight-vocabulary:hover{background:linear-gradient(135deg,#ede9fe,#cffafe)!important;border-color:#8b5cf6!important;}
@media(max-width:980px){
  .lop-vocab-module-head{align-items:flex-start;flex-direction:column;}
  .lop-vocab-module-actions{width:100%;justify-content:flex-start;}
  .lop-vocabulary-body .lop-vocab-tabs{top:70px;}
}
@media(max-width:760px){
  .lop-vocabulary-body .lop-vocab-shell{width:min(100% - 12px,1240px);}
  .lop-vocab-module-head{padding:16px;border-radius:20px;}
  .lop-vocab-module-title{align-items:flex-start;}
  .lop-vocab-module-icon{width:50px;height:50px;flex-basis:50px;border-radius:16px;font-size:24px;}
  .lop-vocab-module-title h1{font-size:24px;}
  .lop-vocab-module-actions>a,.lop-vocab-module-actions>button{flex:1 1 auto;}
  .lop-vocab-user-chip{display:none;}
  .lop-vocabulary-body .lop-vocab-tabs{position:static;grid-template-columns:repeat(2,minmax(0,1fr));}
  .lop-vocabulary-body .lop-vocab-tabs a{min-height:50px;}
  .lop-vocabulary-body .lop-vocab-footer{align-items:flex-start;flex-direction:column;}
}
@media(max-width:420px){
  .lop-vocab-module-actions{display:grid;grid-template-columns:1fr 1fr;}
  .lop-vocab-module-actions>button{grid-column:1/-1;}
  .lop-vocabulary-body .lop-vocab-tabs{grid-template-columns:1fr;}
  .lop-vocabulary-body .lop-vocab-tabs small{white-space:normal;}
}
@media(prefers-reduced-motion:reduce){
  .lop-vocab-module-actions>a,.lop-vocab-module-actions>button{transition:none!important;transform:none!important;}
}

/* v2.8.571: standalone LOP Streak shell and dedicated My Vocabulary flashcards. */
html{margin-top:0!important}
body.lop-vocabulary-body{margin:0!important;padding-top:0!important;background:linear-gradient(180deg,#f7faff 0,#f8fafc 42%,#fff 100%)!important}
body.lop-vocabulary-body #wpadminbar{display:none!important}
body.lop-vocabulary-body .lopsp-site-header{position:relative;z-index:100}
body.lop-vocabulary-body .lopsp-mobile-header-spacer-v308{display:block}
.lop-vocab-my-head{align-items:center}
.lop-vocab-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.lop-vocab-page-actions>a,.lop-vocab-page-actions>button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border:1px solid #cbd5e1;border-radius:12px;color:#334155;background:#fff;text-decoration:none;font-size:12px;font-weight:900;box-sizing:border-box}
.lop-vocab-page-actions>a:hover,.lop-vocab-page-actions>a:focus-visible{color:#3730a3;border-color:#a5b4fc;background:#eef2ff}
.lop-vocab-page-actions>a.is-active{color:#fff;border-color:#4f46e5;background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 9px 20px rgba(79,70,229,.2)}
.lop-vocab-my-grid>article{overflow:hidden;position:relative}
.lop-vocab-my-grid>article.is-mastered{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#fff)}
.lop-vocab-my-thumb{width:100%;height:160px;object-fit:cover;border-radius:14px;background:#f1f5f9}
.lop-vocab-definition{padding:9px 10px;border-radius:11px;background:#f8fafc;color:#475569!important;font-size:12px;line-height:1.45}
.lop-vocab-my-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:auto}
.lop-vocab-my-actions button{align-self:auto!important;min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:7px 10px!important;border:1px solid #c7d2fe!important;border-radius:10px!important;background:#eef2ff!important;color:#3730a3!important;cursor:pointer}
.lop-vocab-my-actions .lop-vocab-state-action.is-master{border-color:#86efac!important;background:#f0fdf4!important;color:#166534!important}
.lop-vocab-my-actions .lop-vocab-state-action.is-relearn{border-color:#fdba74!important;background:#fff7ed!important;color:#9a3412!important}
.lop-vocab-state-action:disabled{opacity:.55;cursor:wait}
.lop-vocab-flashcard-deck{display:grid;gap:14px;padding:18px;border:1px solid #dbeafe;border-radius:24px;background:radial-gradient(circle at 88% 8%,rgba(99,102,241,.12),transparent 27%),linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 15px 34px rgba(15,23,42,.06)}
.lop-vocab-flashcard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#64748b;font-size:12px;font-weight:800}
.lop-vocab-flashcard-toolbar strong{color:#4f46e5;font-size:18px}
.lop-vocab-flashcard-stage{min-height:480px;display:grid;place-items:center}
.lop-vocab-flashcard{width:min(760px,100%);display:grid;gap:12px}
.lop-vocab-flashcard[hidden]{display:none!important}
.lop-vocab-flashcard-inner{width:100%;min-height:430px;position:relative;padding:0;border:0;border-radius:28px;background:transparent;cursor:pointer;perspective:1200px}
.lop-vocab-flashcard-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px;border:1px solid #c7d2fe;border-radius:28px;background:linear-gradient(145deg,#fff,#eef2ff);box-shadow:0 20px 44px rgba(79,70,229,.12);backface-visibility:hidden;transform-style:preserve-3d;transition:transform .45s ease,opacity .45s ease;box-sizing:border-box}
.lop-vocab-flashcard-face.is-back{background:linear-gradient(145deg,#fff,#ecfeff);transform:rotateY(180deg);opacity:0}
.lop-vocab-flashcard.is-flipped .lop-vocab-flashcard-face.is-front{transform:rotateY(180deg);opacity:0}
.lop-vocab-flashcard.is-flipped .lop-vocab-flashcard-face.is-back{transform:rotateY(360deg);opacity:1}
.lop-vocab-flashcard.is-mastered .lop-vocab-flashcard-face{border-color:#86efac}
.lop-vocab-flashcard-meta{position:absolute;top:18px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#64748b;font-size:11px;font-style:normal}
.lop-vocab-flashcard-face img,.lop-vocab-flashcard-fallback{width:min(300px,80%);height:190px;object-fit:cover;border-radius:20px;background:linear-gradient(135deg,#eef2ff,#ecfeff)}
.lop-vocab-flashcard-fallback{display:grid;place-items:center;font-size:66px}
.lop-vocab-flashcard-face>strong{color:#0b1736;font-size:clamp(31px,5vw,52px);line-height:1.08;text-align:center}
.lop-vocab-flashcard-face>em{color:#6366f1;font-size:17px;font-style:normal;font-weight:800}
.lop-vocab-flashcard-face>p{max-width:600px;margin:0;color:#475569;font-size:16px;line-height:1.55;text-align:center}
.lop-vocab-flashcard-face>small{color:#64748b;font-size:12px;font-weight:800}
.lop-vocab-flashcard-face blockquote{max-width:620px;margin:2px 0 0;padding:15px 18px;border-left:4px solid #6366f1;border-radius:14px;background:rgba(255,255,255,.8);text-align:left}
.lop-vocab-flashcard-face blockquote span,.lop-vocab-flashcard-face blockquote small{display:block}
.lop-vocab-flashcard-face blockquote span{color:#0f172a;font-size:15px;font-weight:850}
.lop-vocab-flashcard-face blockquote small{margin-top:5px;color:#64748b}
.lop-vocab-flashcard-actions,.lop-vocab-flashcard-nav{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.lop-vocab-flashcard-actions button,.lop-vocab-flashcard-nav button{min-height:42px;padding:9px 13px;border:1px solid #c7d2fe;border-radius:12px;background:#fff;color:#3730a3;font-size:12px;font-weight:900;cursor:pointer}
.lop-vocab-flashcard-actions .lop-vocab-state-action.is-master{border-color:#86efac;background:#f0fdf4;color:#166534}
.lop-vocab-flashcard-actions .lop-vocab-state-action.is-relearn{border-color:#fdba74;background:#fff7ed;color:#9a3412}
.lop-vocab-flashcard-nav{justify-content:space-between}
.lop-vocab-flashcard-nav button:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:760px){
  .lop-vocab-page-actions{width:100%;justify-content:flex-start}
  .lop-vocab-page-actions>a,.lop-vocab-page-actions>button{flex:1 1 auto}
  .lop-vocab-flashcard-deck{padding:12px;border-radius:20px}
  .lop-vocab-flashcard-toolbar{align-items:flex-start;flex-direction:column;gap:4px}
  .lop-vocab-flashcard-stage{min-height:430px}
  .lop-vocab-flashcard-inner{min-height:410px}
  .lop-vocab-flashcard-face{padding:24px 18px;border-radius:22px}
  .lop-vocab-flashcard-face img,.lop-vocab-flashcard-fallback{height:155px}
  .lop-vocab-flashcard-face>strong{font-size:34px}
  .lop-vocab-flashcard-nav{display:grid;grid-template-columns:1fr 1fr}
  .lop-vocab-flashcard-nav button{width:100%}
}
@media(max-width:420px){
  .lop-vocab-page-actions{display:grid;grid-template-columns:1fr 1fr}
  .lop-vocab-page-actions>button{grid-column:1/-1}
  .lop-vocab-flashcard-stage{min-height:390px}
  .lop-vocab-flashcard-inner{min-height:380px}
  .lop-vocab-flashcard-face img,.lop-vocab-flashcard-fallback{height:135px}
  .lop-vocab-flashcard-face blockquote{padding:11px 12px}
  .lop-vocab-flashcard-actions{display:grid;grid-template-columns:1fr}
  .lop-vocab-flashcard-actions button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .lop-vocab-flashcard-face{transition:none!important}
}

/* v2.8.572: centered Vocabulary pages, clearer heading hierarchy, compact leaderboard empty state. */
.lop-vocabulary-body .lop-vocab-shell{
  width:min(1160px,calc(100% - 24px));
  max-width:1160px;
  margin-inline:auto;
}
.lop-vocabulary-body .lop-vocab-main{
  width:100%;
  max-width:1160px;
  margin-inline:auto;
}
.lop-vocabulary-body .lop-vocab-module-head,
.lop-vocabulary-body .lop-vocab-tabs,
.lop-vocabulary-body .lop-vocab-summary,
.lop-vocabulary-body .lop-vocab-main>section,
.lop-vocabulary-body .lop-vocab-main>div,
.lop-vocabulary-body .lop-vocab-main>form{
  width:100%;
  box-sizing:border-box;
}
.lop-vocabulary-body .lop-vocab-page-head{
  display:grid;
  justify-items:center;
  align-items:center;
  text-align:center;
  gap:13px;
  padding:10px 8px 6px;
}
.lop-vocabulary-body .lop-vocab-page-head>div:first-child{
  max-width:820px;
  margin-inline:auto;
}
.lop-vocabulary-body .lop-vocab-page-actions{
  justify-content:center;
}
.lop-vocabulary-body .lop-vocab-module-title h1,
.lop-vocabulary-body .lop-vocab-page-head h1,
.lop-vocabulary-body .lop-vocab-hero h1{
  font-size:clamp(34px,4vw,46px);
  line-height:1.12;
  letter-spacing:-.025em;
}
.lop-vocabulary-body .lop-vocab-module-title p,
.lop-vocabulary-body .lop-vocab-page-head p,
.lop-vocabulary-body .lop-vocab-hero p{
  font-size:16px;
  line-height:1.55;
}
.lop-vocabulary-body .lop-vocab-section-title h2,
.lop-vocabulary-body .lop-vocab-session-head h2,
.lop-vocabulary-body .lop-vocab-modal-card h2{
  font-size:clamp(25px,2.5vw,30px);
  line-height:1.2;
}
.lop-vocabulary-body .lop-vocab-leaderboard li.lop-vocab-empty{
  display:block;
  width:100%;
  min-width:0;
  padding:18px 12px;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  border-bottom:0;
  box-sizing:border-box;
}
@media(max-width:760px){
  .lop-vocabulary-body .lop-vocab-shell{width:min(100% - 12px,1160px)}
  .lop-vocabulary-body .lop-vocab-page-head{padding-inline:2px}
  .lop-vocabulary-body .lop-vocab-module-title h1,
  .lop-vocabulary-body .lop-vocab-page-head h1,
  .lop-vocabulary-body .lop-vocab-hero h1{font-size:30px}
  .lop-vocabulary-body .lop-vocab-module-title p,
  .lop-vocabulary-body .lop-vocab-page-head p,
  .lop-vocabulary-body .lop-vocab-hero p{font-size:14px}
  .lop-vocabulary-body .lop-vocab-section-title h2,
  .lop-vocabulary-body .lop-vocab-session-head h2,
  .lop-vocabulary-body .lop-vocab-modal-card h2{font-size:24px}
  .lop-vocabulary-body .lop-vocab-leaderboard li.lop-vocab-empty{font-size:14px}
}

/* v2.8.573 / Vocabulary 1.6.0: centered compact title scale. */
body.lop-vocabulary-body{
  --lop-vocab-body-size:16px;
  --lop-vocab-page-title-size:20px;
  --lop-vocab-section-title-size:18px;
}
.lop-vocabulary-body .lop-vocab-module-head{
  display:grid!important;
  grid-template-columns:1fr!important;
  justify-items:center!important;
  align-items:center!important;
  gap:12px!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-module-title{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-module-title>div{
  width:min(820px,100%);
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-module-actions,
.lop-vocabulary-body .lop-vocab-page-actions{
  justify-content:center!important;
}
.lop-vocabulary-body .lop-vocab-module-title h1,
.lop-vocabulary-body .lop-vocab-page-head h1,
.lop-vocabulary-body .lop-vocab-hero h1{
  margin:4px auto 6px!important;
  font-size:var(--lop-vocab-page-title-size)!important;
  line-height:1.3!important;
  letter-spacing:-.012em!important;
  font-weight:850!important;
  text-align:center!important;
  text-wrap:balance;
}
.lop-vocabulary-body .lop-vocab-module-title p,
.lop-vocabulary-body .lop-vocab-page-head p,
.lop-vocabulary-body .lop-vocab-hero p{
  max-width:820px!important;
  margin-inline:auto!important;
  font-size:var(--lop-vocab-body-size)!important;
  line-height:1.55!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-page-head,
.lop-vocabulary-body .lop-vocab-section-title{
  justify-items:center!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-section-title h2,
.lop-vocabulary-body .lop-vocab-session-head h2,
.lop-vocabulary-body .lop-vocab-modal-card h2{
  margin:3px auto 0!important;
  font-size:var(--lop-vocab-section-title-size)!important;
  line-height:1.35!important;
  letter-spacing:-.008em!important;
  font-weight:850!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-hero{
  grid-template-columns:1fr!important;
  justify-items:center!important;
  align-items:center!important;
  gap:10px!important;
  min-height:0!important;
  padding:22px!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-hero-icon{
  width:62px!important;
  height:62px!important;
  border-radius:20px!important;
  font-size:29px!important;
}
.lop-vocabulary-body .lop-vocab-hero-stats{
  justify-content:center!important;
}
.lop-vocabulary-body .lop-vocab-session-head{
  display:grid!important;
  grid-template-columns:1fr!important;
  justify-items:center!important;
  gap:9px!important;
  text-align:center!important;
}
.lop-vocabulary-body .lop-vocab-progress{
  width:min(420px,100%)!important;
  min-width:0!important;
}
.lop-vocabulary-body .lop-vocab-progress span{text-align:center!important;}
.lop-vocabulary-body .lop-vocab-leaderboard li.lop-vocab-empty{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-align:center!important;
}
@media(max-width:760px){
  body.lop-vocabulary-body{
    --lop-vocab-body-size:15px;
    --lop-vocab-page-title-size:19px;
    --lop-vocab-section-title-size:17px;
  }
  .lop-vocabulary-body .lop-vocab-module-head,
  .lop-vocabulary-body .lop-vocab-hero{padding:17px!important;}
}

/* v1.7 public Vocabulary hub in Góc học tập */
.lop-vocab-public-shell{min-height:100vh;background:linear-gradient(180deg,#f8fafc 0,#fff 34%,#f8fafc 100%)}.lop-vocab-public-main{width:min(1160px,calc(100% - 28px));margin:0 auto;padding:24px 0 54px}.lop-vocab-public-hero{display:grid;justify-items:center;gap:8px;padding:28px;border:1px solid #c7d2fe;border-radius:28px;background:radial-gradient(circle at 15% 20%,rgba(129,140,248,.16),transparent 34%),linear-gradient(135deg,#fff,#eef2ff 58%,#ecfeff);text-align:center;box-shadow:0 18px 42px rgba(79,70,229,.08)}.lop-vocab-public-hero>span,.lop-vocab-public-detail>section>span,.lop-vocab-public-knowledge>span{color:#4f46e5;font-size:11px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.lop-vocab-public-hero h1{margin:2px 0;color:#0b1736;font-size:30px;line-height:1.2}.lop-vocab-public-hero p{max-width:760px;margin:0;color:#64748b;font-size:15px;line-height:1.6}.lop-vocab-public-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:8px}.lop-vocab-public-actions a,.lop-vocab-public-detail-actions a,.lop-vocab-public-detail-actions button{min-height:43px;display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border:1px solid #c7d2fe;border-radius:13px;color:#3730a3;background:#fff;text-decoration:none;font-weight:900}.lop-vocab-public-actions a.is-primary,.lop-vocab-public-detail-actions a:last-child,.lop-vocab-public-detail-actions button{color:#fff;background:#4f46e5;border-color:#4f46e5}.lop-vocab-public-actions a:hover,.lop-vocab-public-detail-actions a:hover,.lop-vocab-public-detail-actions button:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(79,70,229,.17)}.lop-vocab-public-filter{display:grid;grid-template-columns:minmax(240px,1fr) 150px 170px auto;gap:8px;margin:18px 0 10px;padding:12px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}.lop-vocab-public-filter input,.lop-vocab-public-filter select,.lop-vocab-public-filter button{width:100%;min-height:43px;padding:9px 11px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;box-sizing:border-box}.lop-vocab-public-filter button{border-color:#4f46e5;color:#fff;background:#4f46e5;font-weight:900}.lop-vocab-public-count{margin:8px 2px 12px;color:#64748b;font-size:13px;font-weight:800}.lop-vocab-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lop-vocab-public-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #e2e8f0;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.05);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.lop-vocab-public-card:hover{transform:translateY(-3px);border-color:#a5b4fc;box-shadow:0 18px 36px rgba(79,70,229,.1)}.lop-vocab-public-card-media{height:190px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#eef2ff,#ecfeff);font-size:52px;text-decoration:none}.lop-vocab-public-card-media img{width:100%;height:100%;object-fit:cover}.lop-vocab-public-card-body{display:flex;flex:1;flex-direction:column;padding:15px}.lop-vocab-public-card-meta{display:flex;gap:6px;flex-wrap:wrap}.lop-vocab-public-card-meta span{padding:4px 7px;border-radius:999px;color:#3730a3;background:#eef2ff;font-size:9px;font-weight:950;text-transform:uppercase}.lop-vocab-public-card h2{margin:8px 0 1px;font-size:22px;line-height:1.2}.lop-vocab-public-card h2 a{color:#0b1736;text-decoration:none}.lop-vocab-public-card-body>small{color:#64748b}.lop-vocab-public-card-body>strong{display:block;margin-top:8px;color:#3730a3;font-size:16px}.lop-vocab-public-card-body>p{color:#64748b;line-height:1.5}.lop-vocab-public-card blockquote{margin:8px 0;padding:10px 12px;border-left:3px solid #818cf8;border-radius:10px;background:#f8fafc;color:#334155;font-size:12px}.lop-vocab-public-card blockquote small{display:block;margin-top:4px;color:#64748b}.lop-vocab-public-card-actions{display:grid;gap:8px;margin-top:auto}.lop-vocab-public-card-actions audio{width:100%;height:36px}.lop-vocab-public-card-actions>a{display:inline-flex;justify-content:flex-end;color:#4338ca;text-decoration:none;font-size:13px;font-weight:900}.lop-vocab-public-empty{grid-column:1/-1;padding:36px;border:1px dashed #cbd5e1;border-radius:20px;color:#64748b;text-align:center}.lop-vocab-public-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.lop-vocab-public-pagination>div{display:flex;gap:7px}.lop-vocab-public-pagination a{padding:9px 12px;border:1px solid #c7d2fe;border-radius:11px;background:#fff;color:#3730a3;text-decoration:none;font-weight:850}.lop-vocab-public-detail{display:grid;gap:16px}.lop-vocab-public-back{justify-self:start;color:#4338ca;text-decoration:none;font-weight:900}.lop-vocab-public-detail-hero{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:24px;align-items:center;padding:22px;border:1px solid #c7d2fe;border-radius:26px;background:linear-gradient(135deg,#fff,#eef2ff)}.lop-vocab-public-detail-image{min-height:330px;display:grid;place-items:center;overflow:hidden;border-radius:22px;background:linear-gradient(135deg,#e0e7ff,#cffafe);font-size:72px}.lop-vocab-public-detail-image img{width:100%;height:100%;object-fit:cover}.lop-vocab-public-detail-hero h1{margin:10px 0 2px;color:#0b1736;font-size:38px;line-height:1.1}.lop-vocab-public-ipa{color:#64748b}.lop-vocab-public-detail-hero h2{margin:12px 0 5px;color:#3730a3;font-size:22px}.lop-vocab-public-detail-hero audio{width:100%;margin-top:12px}.lop-vocab-public-detail>section{padding:18px;border:1px solid #e2e8f0;border-radius:22px;background:#fff}.lop-vocab-public-detail>section h2{margin:3px 0 12px;color:#0b1736;font-size:21px}.lop-vocab-public-example-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lop-vocab-public-example-list article{padding:13px;border-radius:14px;background:#f8fafc}.lop-vocab-public-example-list strong{color:#0b1736}.lop-vocab-public-example-list p{margin:5px 0;color:#475569}.lop-vocab-public-example-list small{color:#64748b}.lop-vocab-public-knowledge>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lop-vocab-public-knowledge article{padding:13px;border:1px solid #eef2f7;border-radius:14px}.lop-vocab-public-knowledge h3{margin:0 0 7px;color:#0b1736}.lop-vocab-public-knowledge ul{margin:0;padding-left:18px;color:#475569}.lop-vocab-public-detail-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.lop-vocab-public-filter input:focus,.lop-vocab-public-filter select:focus,.lop-vocab-public-filter button:focus-visible,.lop-vocab-public-actions a:focus-visible,.lop-vocab-public-card a:focus-visible,.lop-vocab-public-detail-actions a:focus-visible,.lop-vocab-public-detail-actions button:focus-visible{outline:3px solid rgba(59,130,246,.3);outline-offset:3px}
@media(max-width:980px){.lop-vocab-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lop-vocab-public-filter{grid-template-columns:1fr 1fr}.lop-vocab-public-detail-hero{grid-template-columns:1fr}.lop-vocab-public-detail-image{min-height:260px}}
@media(max-width:640px){.lop-vocab-public-main{width:min(100% - 18px,1160px);padding-top:14px}.lop-vocab-public-hero{padding:20px 15px;border-radius:21px}.lop-vocab-public-hero h1{font-size:24px}.lop-vocab-public-filter,.lop-vocab-public-grid,.lop-vocab-public-example-list,.lop-vocab-public-knowledge>div{grid-template-columns:1fr}.lop-vocab-public-card-media{height:180px}.lop-vocab-public-pagination{align-items:flex-start}.lop-vocab-public-detail-hero{padding:15px}.lop-vocab-public-detail-hero h1{font-size:29px}.lop-vocab-public-detail-actions{display:grid}.lop-vocab-public-detail-actions>*{width:100%;box-sizing:border-box}}
@media(prefers-reduced-motion:reduce){.lop-vocab-public-card,.lop-vocab-public-actions a,.lop-vocab-public-detail-actions a,.lop-vocab-public-detail-actions button{transition:none!important;transform:none!important}}

/* v1.8.0: align the public Vocabulary hub with the shared Góc học tập shell. */
body.lop-vocab-public-body{
  overflow-x:hidden;
}
body.lop-vocab-public-body .lop-vocab-public-shell{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  background:linear-gradient(180deg,#f6f9ff 0%,#ffffff 48%,#f8fbff 100%);
}
body.lop-vocab-public-body .lop-vocab-public-main{
  width:min(1120px,calc(100% - 28px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:12px 0 48px!important;
  box-sizing:border-box;
}
body.lop-vocab-public-body .lop-vocab-public-hero{
  justify-items:stretch!important;
  gap:7px!important;
  margin:12px 0 14px!important;
  padding:14px 18px!important;
  text-align:left!important;
}
body.lop-vocab-public-body .lop-vocab-public-hero h1{
  margin:0!important;
  font-size:clamp(19px,2.4vw,26px)!important;
  line-height:1.16!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.lop-vocab-public-body .lop-vocab-public-hero p{
  max-width:none!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.35!important;
  text-align:left!important;
}
body.lop-vocab-public-body .lop-vocab-public-actions{
  flex:0 0 auto;
  justify-content:flex-end!important;
  margin:0!important;
}
body.lop-vocab-public-body .lop-vocab-public-actions a,
body.lop-vocab-public-body .lop-vocab-public-actions a:visited{
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
}
body.lop-vocab-public-body .lop-vocab-public-library{
  margin:0!important;
  padding:18px!important;
  border-radius:22px!important;
}
body.lop-vocab-public-body .lop-vocab-public-filter{
  display:grid!important;
  grid-template-columns:minmax(220px,1.45fr) minmax(130px,.65fr) minmax(150px,.75fr) auto!important;
  gap:9px!important;
  align-items:center!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.lop-vocab-public-body .lop-vocab-public-filter input,
body.lop-vocab-public-body .lop-vocab-public-filter select{
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  padding:9px 11px!important;
  border:1px solid #ccd8e8!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#0f172a!important;
  box-shadow:none!important;
}
body.lop-vocab-public-body .lop-vocab-public-filter input:focus,
body.lop-vocab-public-body .lop-vocab-public-filter select:focus{
  outline:0!important;
  border-color:#60a5fa!important;
  box-shadow:0 0 0 3px rgba(59,130,246,.16)!important;
}
body.lop-vocab-public-body .lop-vocab-public-filter .lop-study-filter-actions{
  min-width:max-content;
}
body.lop-vocab-public-body .lop-vocab-public-filter .lopsp-upgrade-btn{
  width:auto!important;
  min-height:40px!important;
}
body.lop-vocab-public-body .lop-vocab-public-grid{
  margin-top:0;
}
body.lop-vocab-public-body .lop-vocab-public-empty{
  width:100%;
  box-sizing:border-box;
}
body.lop-vocab-public-body .lop-vocab-public-pagination{
  margin:18px 0 0;
}
body.lop-vocab-public-body .lopsp-site-footer{
  margin-top:auto;
}
@media(max-width:860px){
  body.lop-vocab-public-body .lop-vocab-public-main{
    width:min(100% - 24px,1120px)!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-filter{
    grid-template-columns:1fr 1fr!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-filter .lop-study-filter-actions{
    grid-column:1 / -1;
    min-width:0;
  }
}
@media(max-width:640px){
  body.lop-vocab-public-body .lop-vocab-public-main{
    width:calc(100% - 18px)!important;
    padding-top:8px!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-hero{
    margin-top:8px!important;
    padding:13px 14px!important;
    border-radius:18px!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-hero h1{
    font-size:19px!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-hero p{
    display:none!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-actions{
    width:100%;
    justify-content:stretch!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-actions a{
    flex:1 1 0;
  }
  body.lop-vocab-public-body .lop-vocab-public-library{
    padding:13px!important;
    border-radius:18px!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-filter{
    grid-template-columns:1fr!important;
  }
  body.lop-vocab-public-body .lop-vocab-public-filter .lop-study-filter-actions{
    grid-column:auto;
  }
}
@media(prefers-reduced-motion:reduce){
  body.lop-vocab-public-body .lop-vocab-public-actions a{
    transition:none!important;
    transform:none!important;
  }
}


/* v2.8.586 — compact member Vocabulary surfaces within the Học tập menu. */
.lop-vocabulary-body .lop-vocab-main{gap:11px;padding:10px 0 24px}
.lop-vocabulary-body .lop-vocab-module-head{padding:12px 14px;border-radius:18px;gap:10px}
.lop-vocabulary-body .lop-vocab-module-title h1{font-size:24px;line-height:1.2;margin:2px 0}
.lop-vocabulary-body .lop-vocab-module-title p{line-height:1.4}
.lop-vocabulary-body .lop-vocab-module-actions{gap:6px}
.lop-vocabulary-body .lop-vocab-module-actions>a,.lop-vocabulary-body .lop-vocab-module-actions>button,.lop-vocabulary-body .lop-vocab-user-chip{min-height:36px;padding:7px 9px;border-radius:10px}
.lop-vocabulary-body .lop-vocab-tabs{gap:7px;padding:7px;border-radius:15px}
.lop-vocabulary-body .lop-vocab-tabs a{min-height:52px;padding:8px 9px;border-radius:11px}
.lop-vocabulary-body .lop-vocab-summary{gap:7px}
.lop-vocabulary-body .lop-vocab-summary article{padding:10px;border-radius:15px}
.lop-vocabulary-body .lop-vocab-assignments,.lop-vocabulary-body .lop-vocab-notifications,.lop-vocabulary-body .lop-vocab-leaderboard,.lop-vocabulary-body .lop-vocab-challenges,.lop-vocabulary-body .lop-vocab-session{padding:13px;border-radius:18px}
.lop-vocabulary-body .lop-vocab-my-grid>article,.lop-vocabulary-body .lop-vocab-set-grid>article,.lop-vocabulary-body .lop-vocab-game-grid>article{padding:13px;border-radius:16px}
@media(max-width:640px){
  .lop-vocabulary-body .lop-vocab-main{gap:9px;padding-top:7px}
  .lop-vocabulary-body .lop-vocab-module-head{padding:10px;border-radius:15px}
  .lop-vocabulary-body .lop-vocab-module-title h1{font-size:21px}
  .lop-vocabulary-body .lop-vocab-module-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .lop-vocabulary-body .lop-vocab-module-actions>*{min-width:0!important}
  .lop-vocabulary-body .lop-vocab-user-chip{grid-column:1/-1}
  .lop-vocabulary-body .lop-vocab-tabs a{min-width:100px;min-height:48px;padding:7px}
  .lop-vocabulary-body .lop-vocab-tabs small{display:none}
}
