body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;margin:0;background:#0b0f14;color:#e8edf2}
a{color:#9ad1ff;text-decoration:none;margin-right:12px}
.top{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#111a24;border-bottom:1px solid #223043}
.brand{font-weight:700}
.ver{font-weight:400;color:#9fb2c6;margin-left:6px}
.container{padding:18px;max-width:1100px;margin:0 auto}
.card{background:#121b26;border:1px solid #223043;border-radius:10px;padding:14px;margin:12px 0}
label{display:block;margin:8px 0}
input,select{width:100%;padding:8px;border-radius:8px;border:1px solid #223043;background:#0b0f14;color:#e8edf2}
button,.btn{padding:9px 12px;border-radius:8px;border:1px solid #2a3b52;background:#162334;color:#e8edf2;cursor:pointer;display:inline-block}
.grid{display:grid;grid-template-columns:420px 1fr;gap:18px;align-items:start}
.muted{color:#9fb2c6}
.error{color:#ff9090}
.box{border:1px solid #2a3b52;border-radius:10px;padding:12px;margin:10px 0;background:#0f1620}
.box .row{display:flex;justify-content:space-between;gap:8px;align-items:center}
.log{background:#05080d;border:1px solid #223043;border-radius:10px;padding:12px;min-height:340px;overflow:auto}

/* modal */
.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:50}
.modal-content{background:#0f1520;border:1px solid #223043;border-radius:12px;padding:16px;max-width:820px;width:90%}
.modal-content textarea{padding:10px;border-radius:8px;border:1px solid #223043;background:#0b0f14;color:#e8edf2}

.info{padding:10px;margin:10px 0;border:1px solid #99c;background:#eef;border-radius:8px}
