:root{color:#111;background:#f5f7fb;font-family:Arial,sans-serif}body{margin:0}*{box-sizing:border-box}.app{max-width:980px;margin:0 auto;padding:24px}h1{margin-bottom:20px;font-size:22px}h2{color:#333;margin:0 0 14px;font-size:16px}.card{background:#fff;border:1px solid #d8dee9;border-radius:12px;margin-bottom:16px;padding:20px}label{margin-top:12px;margin-bottom:6px;font-size:13px;font-weight:700;display:block}input,textarea,button{border:1px solid #c9d1dc;border-radius:8px;outline:none;width:100%;margin-bottom:10px;padding:10px 12px;font-size:14px}input:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e226}textarea{resize:vertical;font-family:Consolas,monospace}button{cursor:pointer;color:#fff;background:#1a73e8;border:none;font-weight:700;transition:background .15s}button:hover{background:#1558b0}button:active{background:#0d3f80}.row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}pre{white-space:pre-wrap;word-break:break-word;background:#f1f3f7;border-radius:8px;max-height:200px;margin:0;padding:12px;font-size:12px;overflow-y:auto}.badge-fa{color:#0f6e56;background:#e1f5ee;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.badge-mo{color:#185fa5;background:#e6f1fb;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}table th{background:#f1f3f7}p{margin:0 0 8px;font-size:14px}
