:root{--bg:#f7fbff;--panel:#ffffff;--accent:#1a73e8;--accent2:#34a853;--text:#0b1a33;--muted:#5f6b7a;--error:#d93025;--border:#e1e8f3}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:linear-gradient(180deg,#f7fbff 0%,#eef5ff 100%);color:var(--text)}
.container{max-width:980px;margin:0 auto;padding:24px}
header{display:flex;align-items:center;justify-content:space-between;padding:8px 0}
.brand{display:inline-flex;align-items:center;font-weight:800;letter-spacing:.5px;color:var(--text);text-decoration:none}
.brand .logo{width:24px;height:24px;margin-right:8px}
.brand-ip{color:var(--accent)}
.brand-db{color:var(--accent2);margin-left:0}
.brand-hk{color:var(--text);opacity:.9;margin-left:0}
nav a{color:var(--muted);text-decoration:none;margin-left:16px}
nav a:hover{color:var(--text)}
nav select{margin-left:12px;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 8px}
.hero{padding:48px 0}
.hero h1{font-size:40px;margin:0 0 8px;background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .sub{color:var(--muted);margin:0 0 16px}
#query-form{display:flex;gap:12px}
#query-form input{flex:1;background:var(--panel);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:14px 16px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
#query-form button{background:linear-gradient(90deg,var(--accent),var(--accent2));border:none;border-radius:10px;color:#ffffff;padding:14px 18px;font-weight:700;cursor:pointer;box-shadow:0 1px 2px rgba(16,24,40,.08)}
#query-form button:hover{opacity:.95}
.hint{margin-top:8px;color:var(--muted)}
.result{margin-top:28px}
.table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--panel)}
.table th{width:220px;text-align:left;background:#f5f9ff;color:var(--text);border-bottom:1px solid var(--border);padding:10px 12px}
.table td{padding:10px 12px;border-bottom:1px solid var(--border)}
.table tr:last-child th,.table tr:last-child td{border-bottom:none}
.json{background:#f2f7ff;border:1px solid var(--border);border-radius:12px;padding:16px;overflow:auto;max-height:420px}
.error{margin-top:12px;color:var(--error)}
.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;margin:16px 0;box-shadow:0 1px 2px rgba(16,24,40,.06)}
.code-wrap{position:relative}
.code{background:#f2f7ff;border:1px solid var(--border);border-radius:10px;padding:12px;overflow:auto;padding-right:72px}
.copy-inline{position:absolute;top:50%;transform:translateY(-50%);right:8px;border:1px solid var(--border);background:#fff;color:var(--text);border-radius:6px;cursor:pointer}
.copy-inline{font-size:12px;padding:4px 8px;line-height:1}

/* new flex layout for curl rows */
.code-row{display:flex;align-items:center;background:#f2f7ff;border:1px solid var(--border);border-radius:10px;padding:8px 10px}
.code-fit{flex:1;margin:0;padding:6px 8px;background:transparent;border:0;overflow:auto}
.copy-btn{margin-left:10px;font-size:12px;padding:4px 10px;border:1px solid var(--border);background:#fff;color:var(--text);border-radius:6px;cursor:pointer;white-space:nowrap}
.copy{margin-top:8px;background:transparent;border:1px solid var(--border);color:var(--text);border-radius:8px;padding:8px 10px;cursor:pointer}
footer{margin-top:56px;color:var(--muted)}
[dir="ltr"] footer a,[dir="rtl"] footer a{color:var(--muted);text-decoration:none}
[dir="ltr"] footer a strong,[dir="rtl"] footer a strong{font-weight:800}
[dir="ltr"] footer a:hover,[dir="rtl"] footer a:hover{color:var(--text)}
[dir="ltr"] footer .brand-ip,[dir="rtl"] footer .brand-ip{font-weight:800;color:var(--accent)}
[dir="ltr"] footer .brand-db,[dir="rtl"] footer .brand-db{font-weight:800;color:var(--accent2)}
[dir="ltr"] footer .brand-hk,[dir="rtl"] footer .brand-hk{font-weight:800;color:var(--text);opacity:.9}
[dir="rtl"]{direction:rtl}

/* webrtc note */
.webrtc-note{margin:16px 0;color:var(--muted)}

/* playground input harmony */
.pg-input{background:var(--panel);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:10px 12px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.pg-input+.code-row{margin-top:12px}

/* toast */
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#111a;backdrop-filter:blur(6px);color:#fff;padding:8px 12px;border-radius:8px;opacity:0;transition:opacity .2s ease}
.toast.show{opacity:1}


