:root{--red:#c92d3a;--ink:#263238;--border:#e5e7eb}*{box-sizing:border-box}body{margin:0;background:#f6f7f9;color:var(--ink);font:16px Arial,"Microsoft YaHei",sans-serif}header{background:#fff;border-bottom:4px solid var(--red);padding:20px 30px;display:flex;justify-content:space-between;gap:20px;align-items:center}h1{margin:0;color:var(--red);font-size:30px}header p{color:#6b7280;letter-spacing:.7px}a{color:#a42332}.ad-top,.ad-wait{background:#fafafa;border:1px dashed #cbd5e1;border-radius:8px;padding:16px;text-align:center;color:#778391}.ad-top{min-width:280px}.layout{max-width:1550px;margin:20px auto;padding:0 18px;display:grid;grid-template-columns:minmax(270px,28%) minmax(0,72%);gap:16px}.panel{background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px;min-width:0}label{display:block;font-weight:600;margin:16px 0 7px}input{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:7px;font:inherit}button{background:var(--red);color:#fff;border:0;border-radius:7px;padding:11px 15px;cursor:pointer;font-weight:600}button:disabled{opacity:.42;cursor:not-allowed}.secondary,.types button,.languages button{background:#fbecee;color:#9c2632}.search-row,.actions,.languages{display:flex;gap:8px}.search-row input{min-width:0;flex:1}.actions{justify-content:center;margin:18px 0}.actions button{min-width:116px}.types{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.types button{min-height:66px}.types button span{display:block;font-size:14px;margin-top:5px}.types button.active,.languages button.active{background:var(--red);color:#fff}.languages button{flex:1}.hidden{display:none!important}.found{font-weight:600;margin:12px 0}.viewer{height:72vh;min-height:420px;overflow:auto;border:1px dashed #cbd5e1;border-radius:9px;background:#fafafa;display:flex;align-items:center;justify-content:center;text-align:center;color:#64748b}.viewer.loaded{display:block;background:#ddd;padding:10px}.viewer canvas{display:block;max-width:100%;height:auto;margin:14px auto;box-shadow:0 1px 7px #0002}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px}.spinner{width:42px;height:42px;border:4px solid #f1d5d8;border-top-color:var(--red);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#status{color:#697586;min-height:36px;line-height:1.5}footer{text-align:center;padding:20px;color:#7d8692;line-height:1.8}dialog{border:1px solid var(--border);border-radius:12px;max-width:460px;padding:25px}dialog::backdrop{background:#0007}@media(max-width:850px){header{flex-direction:column;align-items:stretch}.layout{grid-template-columns:1fr}.viewer{height:60vh}.ad-top{min-width:0}}

/* Readability adjustment: slightly larger labels, controls and captions. */
small{font-size:14px}button,input,dialog{font-size:inherit}.ad-top,.ad-wait{line-height:1.6}footer{font-size:16px}
