/* Dictionary extends the incumbent DM Sans / serif reading system. */
.dictionary-page{--dict-muted:#626176;line-height:1.65;caret-color:var(--purple)}
[data-theme="dark"] .dictionary-page{--dict-muted:#b9b5c8}
.dictionary-page ::selection{background:var(--light);color:var(--ink)}
.dictionary-page a{color:var(--purple);text-underline-offset:4px;text-decoration-thickness:1px}
.dictionary-page a:hover{text-decoration-thickness:2px}
.dictionary-page :is(a,button,input,select,summary,[tabindex]):focus-visible{outline:2px solid var(--purple);outline-offset:4px}
.dictionary-page :is(button,input,select){font:inherit}
.dictionary-page button{cursor:pointer}
.dictionary-page [hidden]{display:none!important}
.dictionary-page .primary{background:#7054db;border-color:#7054db;color:#fff;font-size:14px;gap:8px;min-height:46px;text-decoration:none}
.dictionary-page .primary:hover:not(:disabled){background:#6144c9}
.dictionary-page .primary:disabled{background:var(--line);border-color:var(--line);color:var(--dict-muted);opacity:1;cursor:default}
.dict-shell{max-width:1160px;margin:0 auto;padding:0 30px}
.dict-skip{position:absolute;left:24px;top:-100px;padding:10px 16px;background:var(--paper);z-index:3}
.dict-skip:focus{top:12px}
.dict-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0 18px}
.dict-brand{display:inline-flex;align-items:center;gap:10px;font-weight:650;font-size:20px;color:var(--ink)!important;text-decoration:none;letter-spacing:-.025em}
.dict-topbar>div{display:flex;align-items:center;gap:20px}
.dict-topbar button{background:none;border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:9px 12px;min-height:44px;font-size:12px}
.dict-nav{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line);padding:8px 0 14px}
.dict-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
.dict-nav [aria-current]{color:var(--ink);font-weight:650}
.dict-search{max-width:700px;margin:28px 0 26px}
.dict-search label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}
.dict-search>div{display:flex;gap:10px}
.dict-search input,.dict-practice :is(input,select){width:100%;min-width:0;min-height:46px;border:1px solid var(--line);border-radius:8px;padding:11px 14px;color:var(--ink);background:var(--paper)}
.dict-search input::placeholder,.dict-practice input::placeholder{color:var(--dict-muted);opacity:1}
.dict-search button{flex-shrink:0}
.dict-search>p{font-size:12px;color:var(--dict-muted);margin:8px 0 0}
.dictionary-page #main{padding:0;outline:none}
.dict-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--dict-muted);margin:22px 0 30px}
.dict-entry-heading{max-width:760px;margin-bottom:28px}
.dict-word-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.dict-entry-heading h1{font-family:Georgia,serif;font-size:clamp(36px,5vw,54px);font-weight:400;line-height:1.2;letter-spacing:-.025em;margin:0;overflow-wrap:anywhere}
.dict-entry-heading p{margin:9px 0;max-width:70ch}
.dict-plural{font-size:21px;line-height:1.5}
.dict-plural strong{font-weight:550}
.dict-parts{font-family:Georgia,serif;font-size:21px}
.dict-listen{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:10px 13px;background:none;color:var(--purple);min-height:44px;font-size:13px!important}
.dict-listen:hover{background:var(--light)}
.dict-listen[aria-busy]{color:var(--dict-muted)}
.dict-layout{display:grid;grid-template-columns:minmax(0,740px) minmax(220px,1fr);gap:52px;align-items:start}
.dict-layout>article{min-width:0}
.dict-layout :is(h2,h3),.dict-word-index h2{font-weight:600;letter-spacing:-.015em;line-height:1.4;color:var(--ink)}
.dict-layout h2{font-size:21px;margin:32px 0 14px}
.dict-layout h3{font-size:16px;margin:24px 0 10px}
.dict-layout p{max-width:72ch;margin:12px 0;overflow-wrap:anywhere}
.dict-paradigm:first-child h2,.dict-learn h2{margin-top:0}
.dict-paradigm{margin-bottom:26px;scroll-margin-top:24px}
.dict-table-wrap{overflow-x:auto;margin:16px 0 28px;scrollbar-width:thin;scrollbar-color:var(--purple) transparent}
.dict-table-wrap table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums;white-space:normal}
.dict-table-wrap caption{text-align:left;font-size:14px;font-weight:600;padding:0 0 12px;color:var(--ink)}
.dict-table-wrap :is(th,td){text-align:left;vertical-align:top;line-height:1.6;padding:12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;color:var(--ink)}
.dict-table-wrap thead{background:var(--light)}
.dict-table-wrap th{font-weight:550}
.dict-table-wrap tbody th{font-size:13px;width:26%;color:var(--dict-muted)}
.dict-table-wrap td{font-family:Georgia,serif;font-size:17px}
.dict-note{padding:16px 0;border-top:1px solid var(--line);font-size:14px}
.dict-jump{display:flex;flex-wrap:wrap;gap:4px 20px;margin:16px 0 26px;font-size:13px}
.dict-jump a{display:inline-flex;align-items:center;min-height:44px}
.dict-tenses{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 28px}
.dict-tense{scroll-margin-top:24px;min-width:0}
.dict-tense h2{font-size:18px}
.dict-tense .dict-table-wrap :is(th,td){padding:10px 8px}
.dict-tense .dict-table-wrap td{font-size:16px}
.dict-tense .dict-table-wrap tbody th{width:35%}
.dict-tense .dict-table-wrap caption{font-size:12px;color:var(--dict-muted);font-weight:400}
.dict-learn{position:sticky;top:24px;padding-top:18px;border-top:1px solid var(--line)}
.dict-learn h2{font-size:20px}
.dict-learn>p{font-size:14px;color:var(--dict-muted)}
.dict-learn ul{list-style:none;margin:20px 0;padding:0}
.dict-learn li{padding:15px 0;border-bottom:1px solid var(--line)}
.dict-learn li h3{font-size:14px;margin:0 0 7px}
.dict-learn li>a{display:block;min-height:32px;font-size:13px;align-content:center}
.dict-learn li p{font-size:13px;margin:0;color:var(--dict-muted)}
.dict-language-note{font-size:12px!important;line-height:1.7}
.dict-examples{margin-top:36px}
.dict-examples figure{margin:0 0 22px}
.dict-examples blockquote{font-family:Georgia,serif;font-size:23px;line-height:1.6;margin:0 0 8px}
.dict-examples figcaption{font-size:14px;color:var(--dict-muted)}
.dict-practice{border-top:1px solid var(--line);padding-top:8px;margin:38px 0}
.dict-practice label{display:block;margin:16px 0 8px;font-size:14px;font-weight:550}
.dict-practice select{max-width:100%;margin-bottom:16px}
.dict-practice .primary{display:inline-flex;margin:12px 0 0}
.dict-practice input{max-width:460px;display:block}
.dict-practice .dict-drill-prompt{font-size:19px;margin:12px 0 20px}
.dict-drill-count{font-size:13px;color:var(--dict-muted)}
.dict-correct{color:var(--green);font-weight:550}
.dict-incorrect{color:var(--red);font-weight:550}
.dict-source{padding:20px 0 12px;border-top:1px solid var(--line);margin:34px 0}
.dict-source h2{font-size:17px}
.dict-source p{font-size:12px;color:var(--dict-muted)}
.dict-related ul{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;padding:0}
.dict-related a{display:inline-flex;align-items:center;min-height:44px}
.dict-index-heading{max-width:72ch;margin:30px 0}
.dict-index-heading h1{font-size:34px;line-height:1.25;font-weight:600;letter-spacing:-.025em;margin:0 0 16px}
.dict-alphabet{display:flex;flex-wrap:wrap;gap:6px;margin:28px 0}
.dict-alphabet a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:44px;border-bottom:1px solid var(--line)}
.dict-word-index{columns:2;column-gap:52px}
.dict-word-index section{break-inside:avoid;scroll-margin-top:24px;padding:12px 0 20px}
.dict-word-index h2{font-size:22px;margin:0 0 16px;border-bottom:1px solid var(--line);padding-bottom:12px}
.dict-word-index ul,#dictionary-results-list{list-style:none;padding:0;margin:0}
.dict-word-index li,#dictionary-results-list li{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,1.5fr);gap:8px 18px;padding:11px 0;align-items:baseline}
.dict-word-index li span,#dictionary-results-list li span{font-size:13px;color:var(--dict-muted);overflow-wrap:anywhere}
#dictionary-results{max-width:760px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:26px}
#dictionary-results h2{font-size:22px}
#dictionary-results-status{color:var(--dict-muted);font-size:14px}
#dictionary-search-clear{background:none;border:0;color:var(--purple);min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:4px}
.dict-bottom-action{margin:30px 0}
.dict-footer{border-top:1px solid var(--line);margin-top:40px;padding:24px 0 36px;font-size:12px;color:var(--dict-muted)}
.dict-footer nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.dict-footer a{display:inline-flex;min-height:44px;align-items:center}
@media(max-width:900px){.dict-layout{gap:32px;grid-template-columns:minmax(0,1fr) 220px}.dict-tenses{grid-template-columns:minmax(0,1fr)}.dict-topbar{align-items:flex-start}.dict-topbar>div{gap:12px}.dict-topbar button{max-width:135px}}
@media(max-width:680px){.dict-shell{padding:0 20px}.dict-topbar{flex-wrap:wrap;gap:10px;padding-top:20px}.dict-topbar>div{width:100%;justify-content:space-between}.dict-topbar button{max-width:none;min-height:44px}.dict-nav{gap:4px 20px}.dict-layout{grid-template-columns:minmax(0,1fr);gap:24px}.dict-learn{position:static}.dict-learn ul{display:block}.dict-word-index{columns:1}.dict-entry-heading{margin-bottom:22px}.dict-plural{font-size:20px}.dict-table-wrap :is(th,td){padding:10px 7px}.dict-table-wrap td{font-size:16px}.dict-table-wrap tbody th{width:25%;font-size:12px}.dict-practice .dict-drill-prompt{font-size:17px}.dict-search>div{gap:8px}.dict-search button{padding:11px 12px;font-size:12px}.dict-search input{padding:10px;font-size:14px}.dict-crumbs{margin-bottom:24px}.dict-word-row{gap:14px}.dict-examples blockquote{font-size:21px}}
@media(prefers-reduced-motion:no-preference){.dict-search input,.dict-practice input{transition:border-color .18s ease-out}.dict-search input:focus,.dict-practice input:focus{border-color:var(--purple)}}

/* The dictionary shares the practice app's sidebar, workspace and mobile rail. */
.dictionary-page .workspace .dict-shell{max-width:1320px;padding:22px 44px 0}
.dictionary-page .sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.dictionary-page .sidebar>*{flex-shrink:0}
.dictionary-page .sidebar .brand{color:var(--ink);text-decoration:none}
.dictionary-page .sidebar .brand-icon{object-fit:contain;background:none;border-radius:0}
.dictionary-page .sidebar .nav-item{color:var(--dict-muted);text-decoration:none}
.dictionary-page [data-nav="learn"]{--nav-day:#6847ba;--nav-night:#c4acff}
.dictionary-page [data-nav="topics"]{--nav-day:#3263b6;--nav-night:#9dbdf4}
.dictionary-page [data-nav="vocabulary"]{--nav-day:#964b9b;--nav-night:#ddb0df}
.dictionary-page [data-nav="reading"]{--nav-day:#28765e;--nav-night:#8dd4b8}
.dictionary-page [data-nav="conversations"]{--nav-day:#8b5b1d;--nav-night:#e5bf81}
.dictionary-page [data-nav="review"]{--nav-day:#a34c3f;--nav-night:#edae9e}
.dictionary-page [data-nav="reference"]{--nav-day:#6156ac;--nav-night:#b6b1ee}
.dictionary-page [data-nav="dictionary"]{--nav-day:#6847ba;--nav-night:#c4acff}
html .dictionary-page .sidebar .nav-item.active{color:var(--nav-color)}
.dictionary-page .sidebar-bottom{margin-top:auto;padding-top:22px}
.dictionary-page .dict-sidebar-practice{width:100%;margin-top:20px;justify-content:space-between;font-size:12px}
.dictionary-page .dict-app-topbar{gap:20px}
.dict-header-actions{display:flex;align-items:center;gap:18px}
.dict-header-actions>.primary{font-size:12px;padding:10px 16px}
.dictionary-page .dict-theme-toggle{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:var(--paper)}
html[data-theme="dark"] .dictionary-page .dict-theme-toggle{color:#e9e7ef;background:#20242f}
html[data-theme="dark"] .dictionary-page .primary:not(:disabled){background:#7054db;border-color:#7054db;color:#fff}
html[data-theme="dark"] .dictionary-page .primary:hover:not(:disabled){background:#6144c9;border-color:#6144c9}
.dict-mobile-brand{display:none}
.dict-hub-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:20px}
.dictionary-page .dict-hub-actions>a{min-height:44px;align-content:center}
.dict-word-index section:target h2{color:var(--purple);border-bottom-color:var(--purple)}
.dictionary-page .dict-entry-heading .primary{margin-top:6px}
.dict-mobile-nav a{--nav-color:var(--nav-day);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:44px;padding:4px 2px;flex:1;color:var(--dict-muted);font-size:9px;line-height:1.3;text-align:center;text-decoration:none}
.dict-mobile-nav a svg{color:var(--nav-color);flex-shrink:0}
html[data-theme="dark"] .dict-mobile-nav a{--nav-color:var(--nav-night)}
.dictionary-page .dict-mobile-nav a.active{color:var(--nav-color);font-weight:650}
.dict-mobile-nav a.active svg{background:var(--light);border-radius:5px}
@media(min-width:721px){.sidebar-collapsed .dict-sidebar-practice{padding:10px;width:44px;justify-content:center;margin-inline:auto}.sidebar-collapsed .dict-sidebar-practice>span{display:none}}
@media(max-width:1100px){.dictionary-page .dict-layout{grid-template-columns:minmax(0,1fr)}.dictionary-page .dict-learn{position:static}}
@media(max-width:900px){.dictionary-page .workspace .dict-shell{padding:20px 24px 0}.dict-word-index{columns:1}}
@media(max-width:720px){
  .dictionary-page .workspace .dict-shell{padding:14px 20px 0}
  .dictionary-page .dict-app-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;height:auto;min-height:80px;padding:14px 20px;gap:12px}
  .dict-app-topbar>.header-german{display:none}
  .dict-mobile-brand{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:650;color:var(--ink)!important;grid-row:1;grid-column:1;letter-spacing:-.02em}
  .dict-header-actions{display:contents}
  .dict-header-actions>.primary{grid-row:2;grid-column:1/-1}
  .dict-header-actions>a:not(.primary){grid-row:1;grid-column:2;font-size:12px}
  .dict-header-actions>.dict-theme-toggle{grid-row:1;grid-column:3}
  .dictionary-page .dict-footer{padding-bottom:110px}
  .dictionary-page .dict-nav{padding-top:0;margin-bottom:18px}
  .dictionary-page .dict-search{margin-top:20px}
}
