:root{--bg: transparent;--text: #1f2329;--muted:#646a73;--card:#ffffff;--border:#e5e6eb;--btn:#1664ff;--btnText:#fff;--btn2:#f2f3f5;--btn2Text:#1f2329}.app.dark{--text:#e8e9ea;--muted:#a3a6ad;--card: rgba(255,255,255,.06);--border: rgba(255,255,255,.14);--btn:#3c7eff;--btnText:#fff;--btn2: rgba(255,255,255,.12);--btn2Text:#e8e9ea}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Tahoma,PingFang SC,Microsoft Yahei,Arial,Hiragino Sans GB,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.app{padding:12px}.header{margin-bottom:12px}.title{font-size:16px;font-weight:700}.subtitle{font-size:12px;color:var(--muted);margin-top:6px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.card{border:1px solid var(--border);border-radius:10px;padding:10px;margin-bottom:12px;background:var(--card)}.cardTitle{font-size:13px;font-weight:700;margin-bottom:10px}.label{display:block;margin-bottom:10px;font-size:12px}.input,.select,.textarea{width:100%;border:1px solid var(--border);background:transparent;color:var(--text);border-radius:8px;padding:8px 10px;margin-top:6px;outline:none}.textarea{min-height:90px;resize:vertical}.hint{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.4}.grid{display:grid;grid-template-columns:1fr;gap:8px}.mapRow{display:flex;flex-direction:column;gap:6px;font-size:12px}.mapLabel{color:var(--muted)}.btnRow{display:flex;gap:8px;margin-top:10px}.btn{flex:1;border:0;padding:10px 12px;border-radius:10px;background:var(--btn);color:var(--btnText);font-weight:700;cursor:pointer}.btn.secondary{background:var(--btn2);color:var(--btn2Text);border:1px solid var(--border);font-weight:700}.btn:disabled{opacity:.6;cursor:not-allowed}.log{margin:0;white-space:pre-wrap;word-break:break-word;font-size:12px;color:var(--text);line-height:1.35}.footer{font-size:12px;color:var(--muted);padding:6px 2px}.row{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}.checkbox{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.btn.small{padding:6px 10px;font-size:12px;border-radius:10px}
