/* The wordbook keeps each collected word beside its original sentence. */
.wb-heading {display:flex;align-items:center;justify-content:space-between;gap:36px;margin-bottom:36px;}
.wb-heading h1 {font:500 58px/1.15 var(--serif);letter-spacing:-1.8px;margin:15px 0;}
.wb-heading h1>span {color:var(--blue);}
.wb-heading>div>p:last-child {color:var(--slate);max-width:590px;font-size:15px;}
.wb-stats {display:flex;align-items:center;gap:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin-bottom:28px;color:var(--slate);font-size:12px;}
.wb-stats strong {font:500 27px var(--serif);color:var(--ink);margin-right:8px;}
.wb-stats>.button {margin-left:auto;}
.wb-toolbar {display:flex;align-items:center;gap:12px;margin-bottom:24px;}
.wb-toolbar .search-box {flex:1;min-width:180px;}
.wb-toolbar .search-box input {width:100%;}
.wb-toolbar select {font:inherit;color:var(--ink);border:1px solid var(--line);background:var(--paper);padding:11px 30px 11px 12px;border-radius:5px;max-width:210px;height:46px;}
.wb-backup {display:flex;gap:14px;}
.wb-backup .text-button {font-size:11px;white-space:nowrap;}
#wb-results {font-size:11px;margin:12px 0;}
#wb-notice:not(:empty) {background:var(--blue-soft);color:var(--ink);padding:14px 18px;border-left:3px solid var(--blue);margin-bottom:18px;font-size:12px;}
.wb-row {display:grid;grid-template-columns:1fr 1.15fr;gap:38px;border-top:1px solid var(--line);padding:30px 4px;overflow-wrap:anywhere;}
.wb-word-title {display:flex;align-items:baseline;gap:12px;}
.wb-word-title>button:first-child {font:500 29px/1.3 var(--serif);text-align:left;padding:0;}
.wb-word-title>button:first-child:hover {color:var(--blue);}
.wb-word .ipa {font-size:12px;margin:7px 0;}
.wb-status {display:inline-block;font-size:10px;letter-spacing:.2px;color:var(--teal);margin:10px 0;}
.wb-status.needs-meaning {color:#956319;}
.wb-meaning {line-height:1.85;max-width:480px;font-size:13px;}
.wb-note {font-size:12px;color:var(--slate);margin-top:10px;white-space:pre-wrap;}
.wb-row-actions {display:flex;gap:20px;margin-top:15px;}
.wb-row-actions .text-button {font-size:11px;}
.wb-row-actions>[data-wb="delete"] {color:var(--slate);}
.wb-contexts {border-left:1px solid var(--line);padding-left:30px;}
.wb-context {margin-bottom:16px;}
.wb-context blockquote {font:400 19px/1.75 var(--serif);margin-bottom:13px;}
.wb-context a.wb-source {font-size:11px;color:var(--blue);}
.wb-original {display:block;font-size:10px;color:var(--slate);margin-top:5px;}
.wb-contexts summary {font-size:11px;color:var(--slate);cursor:pointer;}
.wb-contexts details[open]>summary {margin-bottom:18px;}
.wb-context.wb-manual {color:var(--slate);padding-top:12px;}
.wb-attribution {font-size:9px;line-height:1.7;color:var(--slate);margin-top:12px;}
.wb-attribution a {text-decoration:underline;text-underline-offset:2px;}
.wb-empty {padding:65px 40px;background:var(--paper);border:1px solid var(--line);margin-top:18px;}
.wb-empty h2 {font:400 33px var(--serif);margin:12px 0;}
.wb-empty>p:not(.eyebrow) {max-width:550px;color:var(--slate);line-height:1.9;margin-bottom:25px;}
.wb-empty>.text-button {margin-left:20px;}
.wb-storage-note {font-size:11px;color:var(--slate);border-top:1px solid var(--line);padding-top:23px;margin-top:14px;}
.wb-sr {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
#wb-dialog {width:min(700px,calc(100vw - 60px));max-height:88vh;}
#wb-dialog-body {padding:28px;overflow-wrap:anywhere;}
.wb-field {display:block;font-size:12px;font-weight:600;margin-bottom:17px;}
.wb-field input,.wb-field textarea {display:block;width:100%;font-size:14px;font-weight:400;margin-top:7px;border:1px solid var(--line);border-radius:5px;padding:12px;background:var(--paper);}
.wb-edit-hint {font-size:11px;margin:-7px 0 20px;}
.wb-form-actions {display:flex;align-items:center;gap:17px;margin-top:22px;}
#wb-form-error {color:#9a413a;font-size:12px;margin-top:10px;}
.wb-dictionary {border-top:1px solid var(--line);margin-top:28px;padding-top:20px;}
.wb-dictionary>summary {font-size:13px;cursor:pointer;}
#wb-candidates>.subtle {font-size:12px;margin:15px 0;}
.wb-senses {display:grid;gap:9px;max-height:265px;overflow:auto;margin:15px 0;}
.wb-senses button {text-align:left;border:1px solid var(--line);border-radius:5px;padding:13px 15px;}
.wb-senses button:hover,.wb-senses button[aria-pressed="true"] {border-color:var(--blue);background:var(--blue-soft);}
.wb-senses small {display:block;color:var(--slate);font-size:10px;margin-bottom:4px;}
.wb-senses span {font-size:13px;line-height:1.8;}
.wb-editor-contexts {border-top:1px solid var(--line);padding-top:25px;margin-top:24px;}
.wb-editor-contexts>.eyebrow {margin-bottom:18px;}
.wb-recall h2 {font:500 39px var(--serif);margin:23px 0;}
.wb-recall>p:not(.eyebrow) {color:var(--slate);font-size:13px;margin-bottom:23px;}
.wb-recall-answer {border-top:1px solid var(--line);padding-top:20px;margin:25px 0;}
.wb-recall-answer>.wb-context {background:var(--cloud);padding:18px;margin-top:20px;}
#wb-toast {position:fixed;bottom:26px;left:50%;transform:translate(-50%,15px);opacity:0;visibility:hidden;z-index:3000;background:var(--ink);color:white;padding:13px 20px;border-radius:7px;max-width:calc(100vw - 40px);box-shadow:0 8px 35px #192d4b24;display:flex;align-items:center;gap:22px;font-size:12px;}
#wb-toast.visible {opacity:1;visibility:visible;transform:translate(-50%,0);}
#wb-toast button {font-size:12px;white-space:nowrap;color:#b9d5ff;}
#wb-selection-menu {position:fixed;z-index:2000;display:flex;gap:7px;background:var(--paper);padding:6px;border:1px solid var(--line);border-radius:7px;box-shadow:0 5px 20px #192d4b25;}
#wb-selection-menu .button {min-height:38px;box-shadow:none;}
#wb-selection-menu[hidden],#wb-selection-menu [hidden],.wb-stats [hidden] {display:none;}
.wb-tabs {display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:0;}
.wb-tabs [role="tab"] {display:flex;align-items:center;gap:10px;padding:13px 2px 15px;border-bottom:3px solid transparent;margin-bottom:-1px;font-size:15px;color:var(--slate);}
.wb-tabs [role="tab"][aria-selected="true"] {border-color:var(--blue);color:var(--blue);font-weight:600;}
.wb-tabs [role="tab"]>span {font-size:11px;padding:1px 7px;border-radius:4px;background:var(--blue-soft);color:var(--blue);}
.wb-tabs+.wb-stats,#wb-collection>.wb-stats {border-top:0;}
.wb-sentence-row {grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:42px;}
.wb-sentence-text {font:400 23px/1.8 var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0;}
.wb-sentence-note {margin:23px 0 0;}
.wb-sentence-note>.eyebrow {font-size:9px;margin-bottom:8px;}
.wb-sentence-note>p:not(.eyebrow) {font-size:14px;line-height:1.85;white-space:pre-wrap;}
.wb-sentence-hint {font-size:12px;margin-top:18px;}
.wb-sentence-source {padding:20px 0;border-bottom:1px solid var(--line);}
.wb-sentence-source>p {font-size:13px;margin-bottom:9px;}
.wb-sentence-source>.wb-source {font-size:12px;color:var(--blue);}
.wb-sentence-source details {font-size:12px;margin-top:14px;}
.wb-sentence-source blockquote {font:400 16px/1.8 var(--serif);margin-top:12px;}
.wb-editor-sentence {font-size:21px;background:var(--cloud);border-left:3px solid var(--blue);padding:15px 20px;margin:15px 0 25px;}
.word-mark,.chunk {user-select:text;}
.wb-lesson-link {display:flex;align-items:center;gap:10px;margin:14px 0 4px;padding:13px 12px;border-top:1px solid var(--line);font-size:13px;color:var(--blue);}
.wb-lesson-link small {display:block;color:var(--slate);font-size:9px;margin-top:3px;}
.wb-lesson-link>[data-wb-count] {margin-left:auto;font-size:11px;}
.wb-course-review {border:1px solid var(--line);background:var(--paper);padding:22px 24px;border-radius:7px;margin-bottom:30px;}
.wb-course-review>p {font-size:12px;color:var(--slate);margin:8px 0 15px;}
.wb-course-review h2 {font:500 24px var(--serif);}
.wb-review-list {display:grid;gap:8px;}
.wb-review-list button {display:flex;justify-content:space-between;text-align:left;border-top:1px solid var(--line);padding:10px 0;font-size:13px;gap:20px;}
.wb-review-list button>span {color:var(--slate);font-size:11px;max-width:65%;}
select:focus-visible {outline:3px solid #2966c644;outline-offset:3px;}
@media(max-width:1100px) {.wb-toolbar {flex-wrap:wrap;}.wb-backup {margin-left:auto;}.wb-stats {gap:22px;}}
@media(prefers-reduced-motion:reduce) {#wb-toast {transition:none;}}
