/* Private Vietnamese source draft: preserve the shared source-paper visual system. */
.vi-source-levels{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.vi-source-levels a{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:44px;padding:8px 12px;border:1px solid currentColor;border-radius:8px}
.vi-source-levels [aria-current=page]{font-weight:800;text-decoration:underline}
.vi-mock-main{overflow-wrap:anywhere;scroll-margin-top:20px}
.vi-mock-main :is(button,input,textarea,a,summary):focus-visible{outline:3px solid #23744c;outline-offset:3px}
[data-hsk30-source] :is(button,fieldset,legend){max-width:100%;box-sizing:border-box}
[data-hsk30-source] button{white-space:normal;text-align:center}
@media(max-width:480px){.source30-session-header{flex-wrap:wrap}.source30-intro fieldset{padding:12px}.source30-actions button{width:100%}}
.vi-source-retired{font:1rem/1.65 system-ui,sans-serif;color:#17201b;background:#fffdfb;margin:0;padding:24px;overflow-wrap:anywhere}
.vi-source-retired main{max-width:720px;margin:24px auto}.vi-source-retired h1{line-height:1.3}.vi-source-retired a{display:inline-flex;align-items:center;min-height:44px;color:#215e45}.vi-source-retired a:focus-visible{outline:3px solid #23744c;outline-offset:4px}
