/* Reuse the shared Tinh Hoa tokens. No changes to brand, header or practice layout. */
#catalog-loading{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;background:#fcf8ed;color:#66102c;font:18px/1.5 system-ui;text-align:center;flex-wrap:wrap}
#catalog-loading button{min-height:44px;padding:8px 20px;border:1px solid #c8b58d;border-radius:12px;background:#f4d167;color:#501025;font:inherit}
.catalog-pagination{display:flex;justify-content:space-between;align-items:center;gap:var(--vui-space-2);padding:var(--vui-space-3) 0;color:var(--ui-text);font-size:13px}
.catalog-pagination button{min-height:var(--vui-touch);padding:8px 12px;border-radius:var(--vui-radius-control);border:1px solid var(--ui-line);color:var(--ui-text);background:var(--ui-panel);font:inherit}
.catalog-pagination button:disabled{opacity:.45}.catalog-pagination[hidden]{display:none}
.catalog-status:empty{display:none}.catalog-status{font-size:13px;color:var(--ui-muted);margin:8px 0}
#fw-source-text,#fw-target-text,#text-label,#note-label,.la-sentence{overflow-wrap:anywhere}
#focus-select-group{max-width:100%}
@media(max-width:420px){.catalog-pagination{flex-wrap:wrap}.catalog-pagination span{flex:1;text-align:center}}

/* Only the first-visit language chooser changes the welcome layout. */
#catalog-loading[data-language-entry]{justify-content:flex-start;flex-wrap:nowrap;overflow-y:auto;gap:var(--vui-space-3);padding:max(24px,env(safe-area-inset-top)) var(--vui-space-4) max(24px,env(safe-area-inset-bottom))}
#catalog-loading[data-language-entry]>.welcome-logo{flex-shrink:0}
#catalog-loading[data-language-entry]>strong{font-size:clamp(24px,6vw,36px)}
#catalog-language-entry{width:100%;max-width:760px;flex-shrink:0}
#catalog-language-entry h2{margin:var(--vui-space-4) 0 var(--vui-space-2);font:750 1.25rem/1.4 system-ui;color:inherit}
#catalog-language-entry p{margin:0 0 var(--vui-space-4);font:400 1rem/1.5 system-ui;color:inherit}
.catalog-language-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--vui-space-2)}
#catalog-loading .catalog-language-choice{min-height:var(--vui-touch);min-width:0;padding:var(--vui-space-3);border-radius:var(--vui-radius-control);font:600 1rem/1.4 system-ui;overflow-wrap:anywhere;cursor:pointer}
@media(min-width:720px){.catalog-language-choices{grid-template-columns:repeat(4,minmax(0,1fr))}}
