/* Dials · MCP fullscreen sheet */
.mcp-sheet{
  position:fixed; inset:0; z-index:280;
  display:flex; flex-direction:column;
  background:linear-gradient(180deg, #f7f4fb 0%, #efeaf6 48%, #e8e2f1 100%);
  color:var(--text, #493f47);
  opacity:0; transform:translateY(10px);
  transition:opacity .24s ease, transform .28s cubic-bezier(.22,.8,.24,1);
  overflow:hidden;
}
.mcp-sheet.open{ opacity:1; transform:none; }
.mcp-sheet.open.swiping{ transition:none !important; }
.mcp-sheet[hidden]{ display:none !important; }

.mcp-top{
  flex:none;
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:calc(env(safe-area-inset-top) + 10px) max(14px, calc(50vw - 205px)) 10px;
  border-bottom:1px solid rgba(137,104,166,.12);
  background:rgba(255,255,255,.78);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  backdrop-filter: blur(16px) saturate(1.2);
}
.mcp-top h1{
  margin:0; font-size:17px; font-weight:650; letter-spacing:.04em;
}
.mcp-iconbtn{
  width:38px; height:38px; border:0; border-radius:50%;
  display:grid; place-items:center; cursor:pointer; padding:0;
  background:rgba(255,255,255,.78);
  color:rgba(73,63,71,.78);
  border:1px solid rgba(255,255,255,.85);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 4px 14px rgba(77,53,98,.06);
  font:inherit; font-size:20px; line-height:1;
}

.mcp-scroll{
  flex:1; min-height:0; overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:14px max(14px, calc(50vw - 205px)) calc(28px + env(safe-area-inset-bottom));
}

.mcp-empty{
  margin:28px 4px; text-align:center;
  color:#b28b9f; font:italic 12px/1.6 "Songti SC", serif;
}

.mcp-card{
  margin:0 0 12px; padding:14px 15px;
  border:1px solid rgba(137,104,166,.14);
  border-radius:18px;
  background:rgba(255,255,255,.72);
  box-shadow:0 12px 30px rgba(77,53,98,.06);
}
.mcp-status{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.mcp-status b{ display:block; font-size:16px; }
.mcp-status small{ display:block; margin-top:4px; color:#9a89aa; font-size:11px; letter-spacing:.04em; }
.mcp-status > span{ font:12px ui-monospace, monospace; color:#795c96; }
.mcp-status.live b{ color:#4f8a5c; }
.mcp-status.dead b{ color:#a8677f; }

.mcp-label{
  display:block; font-size:10px; letter-spacing:.18em; color:#9a89aa; margin-bottom:8px;
}
.mcp-input{
  width:100%; box-sizing:border-box;
  border:1px solid rgba(137,104,166,.22); border-radius:12px;
  background:rgba(255,255,255,.88); color:inherit;
  padding:10px 12px; font:13px/1.4 inherit; outline:none;
}
.mcp-hint{ margin:8px 0 0; font-size:11px; line-height:1.55; color:#9a89aa; }
.mcp-actions{ display:flex; gap:8px; justify-content:flex-end; margin-top:12px; }
.mcp-btn{
  border:1px solid rgba(137,104,166,.28); border-radius:999px;
  background:rgba(255,255,255,.9); color:#795c96;
  font:12px inherit; padding:6px 14px; cursor:pointer;
}
.mcp-btn.ghost{ color:#9a89aa; background:transparent; }

.mcp-sec{ margin:18px 0 8px; }
.mcp-sec h2{
  margin:0 2px 10px; font-size:11px; letter-spacing:.2em;
  color:#9a89aa; font-weight:500;
}

.mcp-tool{
  display:block; width:100%; text-align:left;
  margin:0 0 8px; padding:12px 14px;
  border:1px solid rgba(137,104,166,.12); border-radius:14px;
  background:rgba(255,255,255,.66); color:inherit; font:inherit; cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.mcp-tool strong{ display:block; font-size:13px; color:#795c96; word-break:break-all; }
.mcp-tool small{ display:block; margin-top:5px; font-size:11.5px; line-height:1.5; color:#6b5d6f; }

.mcp-result{
  margin:0; max-height:220px; overflow:auto;
  white-space:pre-wrap; word-break:break-word;
  font:11.5px/1.55 ui-monospace, monospace; color:#55455f;
}

.mcp-group{
  display:flex; align-items:center; gap:10px;
  margin:0 0 8px; padding:11px 12px;
  border:1px solid rgba(137,104,166,.12); border-radius:14px;
  background:rgba(255,255,255,.58);
}
.mcp-group b{ display:block; font-size:14px; }
.mcp-group small{ display:block; margin-top:3px; color:#b28b9f; font-size:11px; }
.mcp-orb{
  width:9px; height:9px; border-radius:50%; flex:none;
  background:#c9bcd4; box-shadow:0 0 0 3px rgba(201,188,212,.18);
}
.mcp-orb.live{ background:#7fb08a; box-shadow:0 0 0 3px rgba(127,176,138,.2); }
.mcp-orb.dead{ background:#d9a05b; box-shadow:0 0 0 3px rgba(217,160,91,.22); }
.mcp-orb.off{ background:#c9bcd4; }
