:root{--bg:#fff;--fg:#1f2329;--muted:#646a73;--border:#dee0e3;--accent:#3370ff;--accent-hover:#245bdb;--ok:#34c724;--warn:#f80;--danger:#f54a45;--surface:#f5f6f7}@media (prefers-color-scheme:dark){:root{--bg:#1a1a1a;--fg:#e8e8e8;--muted:#9aa0a6;--border:#3a3a3a;--surface:#242424}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font-family:-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,Segoe UI,Roboto,sans-serif;font-size:13px;line-height:1.5}.app{max-width:520px;padding:12px 14px 32px}.app.loading{color:var(--muted);padding:24px}header h1{margin:0 0 2px;font-size:15px}header p{margin:0 0 14px}h2{color:var(--muted);letter-spacing:.02em;margin:0 0 8px;font-size:12px;font-weight:600}section{border-top:1px solid var(--border);padding:12px 0}section:first-of-type{border-top:none;padding-top:0}.hint{color:var(--muted);margin:-4px 0 10px;font-size:12px}button.disclosure{color:var(--muted);background:0 0;border:none;padding:4px 0;font-size:12px}button.disclosure:hover{color:var(--accent)}.panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-top:6px;padding:10px 10px 2px}h3.sub{color:var(--fg);margin:12px 0 6px;font-size:12px;font-weight:600}.vars li.header code{color:var(--accent)}.muted{color:var(--muted)}.ok{color:var(--ok)}.row{gap:8px;padding:3px 0;display:flex}.row .label{color:var(--muted);min-width:88px}.row .value{word-break:break-all;font-weight:500}.field{margin-bottom:10px;display:block}.field>span{color:var(--muted);margin-bottom:4px;display:block}.field input[type=text],.field input[type=password],.field input:not([type]),.field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--fg);border-radius:6px;padding:6px 8px;font-family:inherit;font-size:13px}.field input:focus,.field select:focus{border-color:var(--accent);outline:none}button{cursor:pointer;font-family:inherit;font-size:13px}button.primary{background:var(--accent);color:#fff;border:none;border-radius:6px;width:100%;padding:8px 12px;font-weight:500}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.primary:disabled{opacity:.45;cursor:not-allowed}button.primary.ghost{color:var(--accent);border:1px solid var(--accent);background:0 0}button.primary.ghost:hover:not(:disabled){background:#3370ff14}button.link{color:inherit;background:0 0;border:none;padding:0 0 0 8px;text-decoration:underline}.tabs{gap:4px;margin-bottom:10px;display:flex}.tab{border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:6px;flex:1;padding:5px 8px}.tab.active{border-color:var(--accent);color:var(--accent);background:#3370ff0f}.checks,.radios{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.check{cursor:pointer;align-items:center;gap:6px;display:flex}.check input{margin:0}.vars{border:1px solid var(--border);border-radius:6px;margin:0 0 8px;padding:0;list-style:none;overflow:hidden}.vars li{border-top:1px solid var(--border);align-items:baseline;gap:8px;padding:5px 8px;display:flex}.vars li:first-child{border-top:none}.vars li code{white-space:nowrap;font-size:12px}.vars li span{color:var(--muted);font-size:12px}.vars li.ok code{color:var(--ok)}.vars li.builtin code{color:var(--accent)}.vars li.missing code{color:var(--danger)}.alert{color:var(--danger);background:#f54a451a;border:1px solid #f54a4559;border-radius:6px;margin-bottom:12px;padding:8px 10px}.log{background:var(--surface);white-space:pre-wrap;word-break:break-all;border-radius:6px;max-height:180px;margin:0;padding:8px;font-size:12px;overflow:auto}code{background:var(--surface);border-radius:3px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
