/* /platform/mcp — the page's own rules (ported from the 02.10 etalon's inline <style>; the kit's rules stay in y.css / ui.css) */
.mc{max-width:1300px;margin:64px auto 0;display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);align-items:stretch;text-align:left}
.ed{background:#fff;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;height:540px;box-shadow:0 40px 90px -30px rgba(0,0,0,.8)}
.ed .bar2{display:flex;gap:7px;align-items:center;padding:11px 14px;border-bottom:1px solid #eef1f5;background:#f7f8f9}
.ed .bar2 i{width:11px;height:11px;border-radius:50%;background:#e2e5ea}
.ed .bar2 span{margin:0 auto;font-size:12px;color:#596779;transform:translateX(-20px)}
.chat{flex:1;padding:18px;display:flex;flex-direction:column;gap:12px;overflow:hidden;font-family:"Plus Jakarta Sans";color:#0f172a}
.msg{max-width:88%;font-size:13.5px;line-height:1.55;animation:uIn .4s var(--ease) both}
.msg.u{align-self:flex-end;background:#0f172a;color:#fff;padding:10px 14px;border-radius:14px 14px 4px 14px}
.msg.a{align-self:flex-start;padding:2px 0}
.tool{display:inline-flex;gap:8px;align-items:center;font-size:12px;color:#596779;background:#f4f6f9;border:1px solid #e8ebef;border-radius:8px;padding:6px 10px;margin-bottom:8px}
.tool .u-spin{width:9px;height:9px}
.tool svg{width:13px;height:13px;color:#16a34a}
.quote{border-left:3px solid #2563eb;background:#f5f8ff;padding:8px 12px;border-radius:0 8px 8px 0;margin-top:6px;font-size:13px}
.quote small{display:block;color:#596779;font-size:11.5px;margin-bottom:2px}
.asks{display:flex;gap:8px;padding:12px 14px;border-top:1px solid #eef1f5;flex-wrap:wrap}
.asks button{all:unset;cursor:pointer;font-size:12.5px;font-weight:600;color:#0f172a;border:1px solid #cbd5e1;border-radius:10px;padding:8px 12px;transition:all .2s}
.asks button:hover{border-color:#94a3b8;background:#f8fafc}
.asks button.on{background:#0f172a;color:#fff;border-color:#0f172a}
.wire{position:relative;display:flex;align-items:center;justify-content:center}
.wire svg{width:60px;height:100%}
.wire .pk{position:absolute;width:10px;height:10px;border-radius:50%;background:#9fb0ff;box-shadow:0 0 12px #9fb0ff;opacity:0;left:25px}
.ws .ui-app{grid-template-columns:150px minmax(0,1fr);height:506px}
.ws .ui-side{font-size:11px}
.ws .ui-main{padding:16px 18px;position:relative}
.pnl{display:none}.pnl.on{display:block;animation:uIn .4s var(--ease)}
.glow{animation:glw 1.4s ease}
@keyframes glw{0%{box-shadow:0 0 0 0 rgba(37,99,235,.45)}100%{box-shadow:0 0 0 14px rgba(37,99,235,0)}}
.kv{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;font-size:12.3px;margin-top:10px}
.kv span:nth-child(odd){color:var(--u-mut)}
/* ---- one set of rules: a ticket where only the source changes ---- */
.one2{max-width:980px;margin:44px auto 0}
.one2-sw{display:flex;gap:4px;background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:12px;padding:4px;width:max-content;margin:0 auto}
.one2-sw button{all:unset;cursor:pointer;display:flex;gap:8px;align-items:center;font-size:14px;font-weight:600;color:var(--ink2);padding:10px 16px;border-radius:9px;transition:all .2s}
.one2-sw button svg{width:16px;height:16px}
.one2-sw button.on{background:#fff;color:#0a0b0d}
.tk3{margin-top:16px;background:#fff;color:#0f172a;border-radius:18px;overflow:hidden;text-align:left}
.tk3-h{padding:18px 22px;border-bottom:1px solid #eef1f5}
.tk3-h small{font-size:12.5px;color:#57606a}
.tk3-h h5{margin-top:3px;font-size:19px;font-weight:650}
.tk3-r{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center;padding:14px 22px;border-top:1px solid #f1f3f6;font-size:14px}
.tk3-r:first-of-type{border-top:0}
.tk3-r>span:first-child{font-size:12.5px;font-weight:600;color:#57606a}
.tk3-r.tsrc{background:#f6f7ff}
.tk3-r.tsrc.flip{animation:uHl 1.2s ease}
.tk3-r .sv{display:flex;gap:10px;align-items:center;font-weight:600}
.tk3-r .sv i{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none}
.tk3-r .sv i svg{width:16px;height:16px}
.tk3-r .sv small{display:block;font-weight:500;color:#57606a;font-size:12.5px}
.pp3{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.pp3 span{font-size:13px;font-weight:600;padding:6px 11px;border-radius:8px;background:#f3f4f6;color:#334155}
.pp3 em{font-style:normal;color:#cbd5e1}
.tk3-f{padding:12px 22px;font-size:13px;color:#57606a;background:#fafbfc;border-top:1px solid #eef1f5}
/* ---- permissions ---- */
.pm{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;margin-top:56px}
.pm-l{border:1px solid var(--line);border-radius:22px;padding:22px;background:linear-gradient(180deg,#131419,#0f1013)}
.pm-l h3{font:500 21px/1.3 "Plus Jakarta Sans"}
.pm-l p{margin-top:8px;font-size:14px;color:var(--ink2);line-height:1.55}
.sw2{display:flex;gap:14px;align-items:center;margin-top:18px;padding:14px;border:1px solid var(--line2);border-radius:14px;cursor:pointer;user-select:none}
.sw2 .t{position:relative;width:42px;height:24px;border-radius:999px;background:#2a2d35;flex:none;transition:background .3s}
.sw2 .t::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .3s var(--ease)}
.sw2.on .t{background:#16a34a}.sw2.on .t::after{transform:translateX(18px)}
.sw2 b{font-size:14px;font-weight:600}.sw2 small{display:block;font-size:12.5px;color:var(--ink3);margin-top:2px}
.pm-l .btn{margin-top:14px}
.pm-r{background:#fff;border-radius:16px;padding:18px;color:#0f172a;min-height:260px;display:flex;flex-direction:column;gap:10px}
.pm-r .msg{max-width:100%}
.res3{border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5;animation:uIn .4s var(--ease)}
.res3.ok{background:#f0fbf5;color:#14532d;border:1px solid #bfe8cf}
.res3.no{background:#fff5f5;color:#7f1d1d;border:1px solid #f5c2c2}
@media(max-width:1060px){.one2-sw{width:auto;flex-wrap:wrap}.one2-sw button{padding:9px 12px;font-size:13px}.tk3-r{grid-template-columns:1fr;gap:4px}.mc{grid-template-columns:1fr}.wire{display:none}.pm{grid-template-columns:1fr}.ws .ui-side{display:none}.ws .ui-app{grid-template-columns:1fr}}
