:root{color-scheme:light;--bg:#0b1020;--panel:rgba(255,255,255,0.06);--text:rgba(255,255,255,0.92);--muted:rgba(255,255,255,0.7);--border:rgba(255,255,255,0.12);--accent:#7c3aed;--danger:#ef4444}*{box-sizing:border-box}body,html{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:radial-gradient(1200px 900px at 20% 10%,rgba(124,58,237,.35),transparent 55%),radial-gradient(900px 700px at 70% 30%,rgba(34,197,94,.18),transparent 55%),var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.container{max-width:1240px;margin:0 auto;padding:20px}.card{border:1px solid var(--border);border-radius:16px;background:rgba(0,0,0,.22);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.btn{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:rgba(255,255,255,.08);color:var(--text);cursor:pointer;font-weight:600}.btn.primary{border-color:rgba(124,58,237,.65);background:linear-gradient(180deg,rgba(124,58,237,.7),rgba(124,58,237,.35))}.btn.danger{border-color:rgba(239,68,68,.55);background:rgba(239,68,68,.12)}.btn:disabled{cursor:not-allowed;opacity:.6}.input{padding:10px 12px}.input,.textarea{width:100%;border-radius:12px;border:1px solid var(--border);background:rgba(0,0,0,.25);color:var(--text);outline:none}.textarea{min-height:360px;resize:vertical;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.35}.muted{color:var(--muted)}.errorBanner{border:1px solid rgba(239,68,68,.5);background:rgba(239,68,68,.12);padding:10px 12px;border-radius:12px}.appShell{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 40px)}.sideNav{border-right:1px solid var(--border);padding:16px;gap:14px}.sideNav,.sideNavHeader{display:flex;flex-direction:column}.sideNavHeader{gap:6px}.sideNavHeader h1{font-size:14px;margin:0}.navList{display:flex;flex-direction:column;gap:6px}.navItem{display:flex;align-items:center;justify-content:space-between;padding:10px;border-radius:12px;border:1px solid transparent;color:rgba(255,255,255,.85)}.navItem.active{border-color:rgba(124,58,237,.55);background:rgba(124,58,237,.14)}.main{padding:16px;min-width:0}.pageHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02))}.pageHeader h2{font-size:14px;margin:0}.pageActions{display:flex;gap:8px;align-items:center}.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid var(--border);padding:10px 12px;text-align:left;font-size:13px;vertical-align:top}th{position:-webkit-sticky;position:sticky;top:0;background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1}.pill{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid var(--border);border-radius:999px;font-size:12px;color:var(--muted)}@media (max-width:900px){.appShell{grid-template-columns:1fr}.sideNav{border-right:none;border-bottom:1px solid var(--border)}}.iconBtn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.08);color:var(--text);cursor:pointer}.iconBtn:hover{border-color:rgba(124,58,237,.55);background:rgba(124,58,237,.18)}.modalOverlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.55);display:flex;align-items:stretch;justify-content:center;padding:16px;box-sizing:border-box}.modalPanel{width:min(900px,100%);height:100%;max-height:100%;border:1px solid var(--border);border-radius:16px;background:#121826;box-shadow:0 24px 80px rgba(0,0,0,.45);display:flex;flex-direction:column;overflow:hidden}.modalPanel.chatHistoryModal{height:100%}.modalHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));flex-shrink:0}.chatHistoryBody{flex:1 1;min-height:0;overflow:auto;padding:12px 16px 16px;display:flex;flex-direction:column;gap:10px}.chatBubble{border:1px solid var(--border);border-radius:12px;padding:10px 12px;max-width:92%}.chatBubbleUser{align-self:flex-end;background:rgba(124,58,237,.16);border-color:rgba(124,58,237,.35)}.chatBubbleAssistant{align-self:flex-start;background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.28)}.chatBubbleOther{align-self:stretch;background:rgba(255,255,255,.04)}.chatBubbleMeta{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.chatBubbleContent{white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.45}.chatBubbleInfoLink{margin-left:auto;border:none;background:transparent;color:rgba(167,139,250,.95);cursor:pointer;font-size:11px;font-weight:600;text-decoration:underline;padding:0}.chatBubbleInfoLink:hover{color:#fff}.modalOverlayNested{z-index:1100;background:rgba(0,0,0,.65)}.messageDetailModal{width:min(980px,100%)}.messageDetailBody{gap:16px}.messageDetailWarnings{border:1px solid rgba(234,179,8,.4);background:rgba(234,179,8,.1);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.messageDetailSection{border:1px solid var(--border);border-radius:12px;padding:12px;background:rgba(255,255,255,.03)}.messageDetailSectionTitle{margin:0 0 10px;font-size:13px}.messageDetailDl{display:grid;grid-template-columns:minmax(120px,160px) 1fr;grid-gap:8px 12px;gap:8px 12px;margin:0;font-size:12px}.messageDetailDl dt{color:var(--muted);font-weight:600}.messageDetailDl dd{margin:0;min-width:0}.messageDetailPre{margin:0;max-height:320px;overflow:auto;padding:10px;border-radius:10px;border:1px solid var(--border);background:rgba(0,0,0,.35);white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:11px;line-height:1.4}.messageDetailCallTabs{display:flex;flex-wrap:wrap;gap:8px}.messageDetailTab{padding:6px 10px;font-size:12px}