/* CBCrypto Admin Research Observatory V1 */
.admin-obv-page{padding:0!important}
.admin-obv-page:not(.active){display:none!important}
body.admin-observatory-active .product-command-bar{display:none}
body.admin-observatory-active #commandFeedback{display:none}
.admin-obv-shell{width:min(1500px,calc(100vw - 250px));margin:0 auto;padding:26px 28px 52px;box-sizing:border-box}
.admin-obv-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:0 0 18px;padding:22px 24px;border:1px solid rgba(84,158,199,.18);border-radius:18px;background:linear-gradient(145deg,rgba(11,29,42,.94),rgba(6,18,27,.90));box-shadow:0 18px 50px rgba(0,0,0,.14)}
.admin-obv-hero h1{margin:3px 0 7px;font-size:28px;line-height:1.1;color:#eef9ff}
.admin-obv-hero p{max-width:840px;margin:0;color:#89a8ba;font-size:13px;line-height:1.55}
.admin-obv-kicker{font-size:9px;font-weight:900;letter-spacing:.14em;color:#58d5ff}
.admin-obv-hero-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;min-width:220px}
.admin-obv-pill{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid rgba(100,160,194,.22);border-radius:999px;background:#091b27;color:#8eb1c5;font-size:9px;font-weight:850;letter-spacing:.03em;white-space:nowrap}
.admin-obv-pill.safe,.admin-obv-pill.ok{border-color:rgba(72,214,159,.24);background:rgba(56,183,132,.07);color:#76ddb7}
.admin-obv-pill.live:before{content:"";width:6px;height:6px;margin-right:6px;border-radius:50%;background:#647f90}
.admin-obv-pill.live.ok:before{background:#57d9a8;box-shadow:0 0 10px rgba(87,217,168,.5)}
.admin-obv-notice{margin-bottom:16px;padding:12px 15px;border:1px solid rgba(71,186,244,.18);border-radius:12px;background:rgba(51,171,229,.05);color:#8eb2c4;font-size:11px;line-height:1.5}
.admin-obv-notice b{color:#dff6ff}
.admin-obv-grid{display:grid;gap:16px;margin-bottom:16px}
.admin-obv-grid-2{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}
.admin-obv-card{min-width:0;padding:18px;border:1px solid rgba(86,142,177,.16);border-radius:16px;background:rgba(8,20,30,.80);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.admin-obv-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.admin-obv-card-head>div>span{display:block;margin-bottom:4px;color:#56d2ff;font-size:8px;font-weight:900;letter-spacing:.13em}
.admin-obv-card-head h2{margin:0;color:#edf8fd;font-size:17px;line-height:1.2}
.admin-obv-card-head p{margin:5px 0 0;color:#7896a8;font-size:10px;line-height:1.45}
.admin-obv-lock{padding:5px 8px;border-radius:7px;border:1px solid rgba(74,210,160,.20);background:rgba(74,210,160,.05);color:#6fd6ae;font-size:8px;font-weight:900;white-space:nowrap}
.admin-obv-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.admin-obv-form-grid label{display:grid;gap:5px;color:#83a0b1;font-size:9px;font-weight:800}
.admin-obv-form-grid input,.admin-obv-filter,.admin-obv-toolbar input,.admin-obv-param input,.admin-obv-param select{width:100%;min-width:0;box-sizing:border-box;min-height:39px;padding:9px 10px;border:1px solid rgba(96,151,184,.20);border-radius:9px;background:#071720;color:#eaf7fd;outline:none;font-size:12px}
.admin-obv-form-grid input:focus,.admin-obv-filter:focus,.admin-obv-toolbar input:focus,.admin-obv-param input:focus,.admin-obv-param select:focus{border-color:rgba(71,190,249,.58);box-shadow:0 0 0 3px rgba(71,190,249,.07)}
.admin-obv-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:14px}
.admin-obv-actions button,.admin-obv-toolbar button{min-height:38px;padding:8px 13px;border:1px solid rgba(83,147,182,.26);border-radius:9px;background:#0a1d29;color:#a8c7d8;font-weight:800;cursor:pointer}
.admin-obv-actions button.primary{border-color:rgba(59,193,247,.34);background:linear-gradient(135deg,rgba(28,145,204,.20),rgba(16,87,125,.18));color:#6fd6ff}
.admin-obv-actions button:disabled,.admin-obv-toolbar button:disabled{opacity:.5;cursor:wait}
.admin-obv-actions span{color:#718c9c;font-size:9px}
.admin-obv-comparison{display:grid;gap:10px}
.admin-obv-result-block{padding:12px;border:1px solid rgba(87,145,179,.13);border-radius:12px;background:rgba(6,18,27,.62)}
.admin-obv-result-block h3{margin:0 0 9px;color:#cfe8f4;font-size:11px}
.admin-obv-result-grid,.admin-obv-delta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.admin-obv-delta{padding:11px;border:1px dashed rgba(81,155,194,.18);border-radius:11px}
.admin-obv-metric{min-width:0;padding:10px;border:1px solid rgba(88,143,176,.12);border-radius:10px;background:rgba(7,21,31,.58)}
.admin-obv-metric span,.admin-obv-metric small{display:block;color:#6f8d9e;font-size:8px}
.admin-obv-metric b{display:block;margin:4px 0;color:#dceff7;font-size:16px;line-height:1.05;overflow-wrap:anywhere}
.admin-obv-metric.good b,.good{color:#68dcb1!important}
.admin-obv-metric.bad b,.bad{color:#ff8f9a!important}
.admin-obv-metric.neutral b,.neutral{color:#b3c9d5!important}
.admin-obv-param-tabs{display:flex;gap:6px;margin:0 0 10px}
.admin-obv-param-tabs button{min-height:32px;padding:6px 12px;border:1px solid rgba(80,140,176,.18);border-radius:8px;background:#071823;color:#7f9fb0;font-size:9px;font-weight:850;cursor:pointer}
.admin-obv-param-tabs button.active{border-color:rgba(70,191,245,.40);background:rgba(45,167,225,.10);color:#64d2ff}
.admin-obv-filter{width:min(290px,100%)}
.admin-obv-param-library{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;max-height:430px;overflow:auto;padding-right:3px}
.admin-obv-param{display:grid;gap:7px;padding:10px;border:1px solid rgba(82,137,169,.13);border-radius:10px;background:rgba(6,18,27,.55)}
.admin-obv-param.changed{border-color:rgba(255,184,84,.28);background:rgba(255,172,58,.035)}
.admin-obv-param>span b,.admin-obv-param>span small{display:block}
.admin-obv-param>span b{color:#c9e0ec;font-size:10px;overflow-wrap:anywhere}
.admin-obv-param>span small{margin-top:2px;color:#607e90;font-size:7px;overflow-wrap:anywhere}
.admin-obv-param.changed>span small{color:#d4a969}
.admin-obv-footnote{margin-top:10px;color:#698495;font-size:8px;line-height:1.45}
.admin-obv-empty{padding:22px;border:1px dashed rgba(82,139,173,.18);border-radius:11px;color:#748f9f;text-align:center;font-size:10px}
.admin-obv-empty.compact{padding:12px}.admin-obv-empty.error{border-color:rgba(242,98,110,.25);color:#ff98a1}

.admin-obv-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px 14px;border:1px solid rgba(85,143,176,.14);border-radius:12px;background:rgba(8,20,30,.65)}
.admin-obv-toolbar b,.admin-obv-toolbar small{display:block}.admin-obv-toolbar b{color:#cfe3ed;font-size:11px}.admin-obv-toolbar small{margin-top:2px;color:#6c8798;font-size:8px}
.admin-obv-toolbar-actions{display:flex;gap:8px;align-items:center}.admin-obv-toolbar input{width:230px}
.admin-obv-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:15px}
.admin-obv-user-list{display:grid;gap:14px}
.admin-obv-user-card{min-width:0;padding:17px;border:1px solid rgba(84,142,176,.16);border-radius:15px;background:rgba(8,20,30,.78)}
.admin-obv-user-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:13px;border-bottom:1px solid rgba(86,141,173,.10)}
.admin-obv-user-kicker{color:#57d1ff;font-size:8px;font-weight:900;letter-spacing:.12em}
.admin-obv-user-card h2{margin:3px 0;color:#edf7fc;font-size:17px}.admin-obv-user-card header p{margin:4px 0 0;color:#6e8999;font-size:9px}
.admin-obv-user-state{display:grid;gap:6px;justify-items:end}.admin-obv-user-state>b{color:#b9d1dc;font-size:10px}
.admin-obv-runtime{display:inline-flex;align-items:center;gap:5px;margin-left:4px;padding:4px 7px;border-radius:999px;border:1px solid rgba(98,142,168,.15);color:#728d9c;font-size:7px;font-weight:800}
.admin-obv-runtime i{width:5px;height:5px;border-radius:50%;background:#516b79}.admin-obv-runtime.on{color:#72dab4;border-color:rgba(74,208,157,.18);background:rgba(74,208,157,.04)}.admin-obv-runtime.on i{background:#61dcae;box-shadow:0 0 8px rgba(97,220,174,.45)}
.admin-obv-engine-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}
.admin-obv-engine{padding:12px;border:1px solid rgba(86,143,176,.12);border-radius:11px;background:rgba(6,18,27,.55)}
.admin-obv-engine-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-obv-engine-title b{color:#a9c5d3;font-size:10px}.admin-obv-engine-title span{color:#5e7b8b;font-size:8px}
.admin-obv-engine-value{margin:7px 0 6px;font-size:21px;font-weight:900;letter-spacing:-.02em}
.admin-obv-engine-mini{display:flex;flex-wrap:wrap;gap:5px}.admin-obv-engine-mini span{padding:3px 6px;border-radius:6px;background:#081a25;color:#6e8d9e;font-size:7px}
.admin-obv-user-card details{margin-top:11px;border-top:1px solid rgba(82,138,170,.09);padding-top:10px}
.admin-obv-user-card summary{cursor:pointer;color:#9cb9c8;font-size:9px;font-weight:850}.admin-obv-user-card summary span{margin-left:7px;color:#587687;font-weight:500}
.admin-obv-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.admin-obv-mini-block{min-width:0;padding:10px;border:1px solid rgba(83,139,172,.11);border-radius:10px;background:rgba(5,17,26,.48)}
.admin-obv-mini-block.span-2{grid-column:1/-1}.admin-obv-mini-block h4{margin:0 0 7px;color:#94b5c5;font-size:9px}
.admin-obv-table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}
.admin-obv-table-wrap table{width:100%;border-collapse:collapse;min-width:500px}.admin-obv-table-wrap th,.admin-obv-table-wrap td{padding:7px 8px;border-bottom:1px solid rgba(82,135,166,.08);text-align:left;font-size:8px;white-space:nowrap}.admin-obv-table-wrap th{color:#5e7e90;font-weight:900}.admin-obv-table-wrap td{color:#8eabb9}.admin-obv-table-wrap td b{color:#c7dce6}

@media(max-width:1180px){
  .admin-obv-shell{width:100%;padding:22px 20px 45px}
  .admin-obv-grid-2{grid-template-columns:1fr}
  .admin-obv-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-obv-param-library{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .admin-obv-shell{padding:14px 12px 42px}
  .admin-obv-hero{display:grid;padding:16px;border-radius:14px}.admin-obv-hero h1{font-size:23px}.admin-obv-hero p{font-size:11px}
  .admin-obv-hero-badges{justify-content:flex-start;min-width:0}
  .admin-obv-card{padding:13px;border-radius:13px}.admin-obv-card-head{display:grid}.admin-obv-lock{justify-self:start}
  .admin-obv-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-obv-result-grid,.admin-obv-delta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-obv-param-library{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}
  .admin-obv-toolbar{display:grid}.admin-obv-toolbar-actions{display:grid;grid-template-columns:1fr auto}.admin-obv-toolbar input{width:100%}
  .admin-obv-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-obv-user-card{padding:13px}.admin-obv-user-card>header{display:grid}.admin-obv-user-state{justify-items:start}.admin-obv-runtime{margin:0 4px 0 0}
  .admin-obv-engine-grid{grid-template-columns:1fr}.admin-obv-engine{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px}.admin-obv-engine-title{grid-column:1/-1}.admin-obv-engine-value{font-size:19px}.admin-obv-engine-mini{justify-content:flex-end}
  .admin-obv-detail-grid{grid-template-columns:1fr}.admin-obv-mini-block.span-2{grid-column:auto}
  .admin-obv-user-card summary span{display:block;margin:3px 0 0}
}
@media(max-width:380px){
  .admin-obv-form-grid,.admin-obv-param-library,.admin-obv-kpi-grid,.admin-obv-result-grid,.admin-obv-delta{grid-template-columns:1fr}
  .admin-obv-toolbar-actions{grid-template-columns:1fr}.admin-obv-toolbar button{width:100%}
  .admin-obv-actions button{flex:1 1 100%}
}
