/* ===== Developer module (temporary — safe to delete this file + developer.js
   + the #devRoot tab in platform-admin.js once the app ships. Now lives
   inside Platform Admin's "Developer" tab, not its own sidebar item.) */

.dev-warn-banner{display:flex; align-items:center; gap:8px; background:var(--amber-50,#fffbeb); color:var(--amber-600); border:1px solid var(--amber-600); border-radius:10px; padding:10px 16px; margin-bottom:18px; font-size:13px;}
.dev-warn-banner svg{width:16px; height:16px; flex:none;}

.dev-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
.dev-grid .card{margin-bottom:0;}
.dev-full{grid-column:1 / -1;}

.dev-section-title{display:flex; align-items:center; justify-content:space-between; margin-bottom:14px;}
.dev-section-title h3{font-size:15px; margin:0;}

.dev-provider-row{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px;}
.dev-radio-pill { border:1px solid var(--border); cursor:pointer; background:none; color:var(--ink-500); transition:background .15s ease, color .15s ease, border-color .15s ease; }
.dev-radio-pill.active{background:var(--purple-600); border-color:var(--purple-600); color:#fff;}
.dev-model-input{margin-top:4px;}

.dev-health-table{width:100%; border-collapse:collapse; font-size:12.5px;}
.dev-health-table th{text-align:left; color:var(--ink-500); font-weight:600; padding:6px 8px; border-bottom:1px solid var(--border);}
.dev-health-table td{padding:8px; border-bottom:1px solid var(--border); vertical-align:top;}
.dev-health-table tr:last-child td{border-bottom:none;}

.dev-status-pill { display:inline-flex; align-items:center; gap:4px; }
.dev-status-pass{background:var(--green-50,#ecfdf5); color:var(--green-600,#059669);}
.dev-status-fail{background:var(--red-50,#fef2f2); color:var(--red-600,#dc2626);}
.dev-status-pending{background:var(--ink-100,#f1f1f4); color:var(--ink-500);}

.dev-chat-log{display:flex; flex-direction:column; gap:10px; max-height:340px; overflow-y:auto; padding:4px 2px 12px; margin-bottom:12px;}
.dev-chat-msg{max-width:85%; padding:9px 13px; border-radius:12px; font-size:13px; line-height:1.5; white-space:pre-wrap; word-break:break-word;}
.dev-chat-msg.user{align-self:flex-end; background:var(--purple-600); color:#fff; border-bottom-right-radius:3px;}
.dev-chat-msg.assistant{align-self:flex-start; background:var(--ink-100,#f1f1f4); color:var(--ink-900,#111); border-bottom-left-radius:3px;}
.dev-chat-msg.error{align-self:flex-start; background:var(--red-50,#fef2f2); color:var(--red-600,#dc2626); border-bottom-left-radius:3px;}
.dev-chat-meta{display:block; margin-top:5px; font-size:10.5px; opacity:.7; font-weight:600;}

.dev-chat-input-row{display:flex; gap:8px;}
.dev-chat-input-row .form-input{flex:1;}

.dev-log-list{display:flex; flex-direction:column; gap:8px; max-height:340px; overflow-y:auto;}
.dev-log-item{border:1px solid var(--border); border-radius:10px; padding:10px 12px; font-size:12px;}
.dev-log-item summary{cursor:pointer; display:flex; align-items:center; gap:8px; list-style:none;}
.dev-log-item summary::-webkit-details-marker{display:none;}
.dev-log-time{color:var(--ink-500); font-size:11px;}
.dev-log-detail{margin-top:8px; background:var(--ink-100,#f1f1f4); border-radius:8px; padding:8px 10px; font-family:monospace; font-size:11px; white-space:pre-wrap; word-break:break-word; max-height:200px; overflow-y:auto;}

.dev-tester-body{font-family:monospace; font-size:12px; resize:vertical;}
#devTesterResult{margin-top:14px;}
#devTesterResult:empty{margin-top:0;}

@media (max-width:980px){
  .dev-grid{grid-template-columns:1fr;}
}
