/* Extracted from inline <style> block(s) for CSP style-src compliance. */
.tool-panel { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); padding: 32px; position: relative; }
    .tool-output { background: rgba(0,0,0,.25); border: 1px solid var(--border); border-radius: var(--r-md); padding: 18px 20px; margin-bottom: 8px; }
    .tool-output textarea { width: 100%; background: none; border: none; outline: none; color: #cfe3ff; font-family: Consolas, 'Space Grotesk', monospace; font-size: 13.5px; line-height: 1.6; resize: vertical; min-height: 260px; white-space: pre; }
    .tool-actions { display: flex; gap: 12px; margin-top: 20px; flex-wrap: wrap; }
    .ps-gate { border: 1px solid rgba(255,107,107,.35); background: rgba(255,107,107,.06); border-radius: var(--r-md); padding: 28px; }
    .ps-gate h3 { color: #ff9c9c; margin-bottom: 14px; font-size: 18px; }
    .ps-gate p { color: #d8c8c8; font-size: 14.5px; line-height: 1.7; margin-bottom: 12px; }
    .ps-gate .tool-check { display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; color: #fff; margin: 18px 0; }
    .ps-gate .tool-check input { width: 18px; height: 18px; accent-color: #ff6b6b; margin-top: 2px; flex-shrink: 0; }
    #psTool { display: none; }
    .run-note { font-size: 13px; color: var(--muted); margin-top: 8px; }
    /* nicer template picker + inputs */
    .ps-picker { margin-bottom: 24px; }
    .ps-picker > label { display:block; font-size:12.5px; font-weight:600; letter-spacing:.03em; text-transform:uppercase; color:var(--muted); margin-bottom:10px; }
    .ps-picker-wrap {
      position: relative; border-radius: 16px; padding: 1.5px;
      background: linear-gradient(120deg, rgba(82,160,255,.55), rgba(0,212,192,.35) 50%, rgba(82,160,255,.15));
      transition: background .2s, box-shadow .2s;
    }
    .ps-picker-wrap:hover { box-shadow: 0 0 0 3px rgba(82,160,255,.1); }
    .ps-picker-wrap:focus-within { box-shadow: 0 0 0 4px rgba(82,160,255,.18); }
    .ps-picker-wrap::before {
      content:''; position:absolute; left:18px; top:50%; transform:translateY(-50%);
      width:20px; height:20px; pointer-events:none; opacity:.85;
      background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2352a0ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='4 17 10 11 4 5'/><line x1='12' y1='19' x2='20' y2='19'/></svg>") no-repeat center / contain;
    }
    #psTemplate {
      width:100%; appearance:none; -webkit-appearance:none;
      background: #0d1c33 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2352a0ff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 18px center;
      border:none; border-radius:14.5px; color:#fff;
      font-family:'Space Grotesk',sans-serif; font-size:15.5px; font-weight:500;
      padding:16px 46px 16px 50px; cursor:pointer; transition:background-color .18s;
    }
    #psTemplate:hover { background-color: #112542; }
    #psTemplate:focus { outline:none; background-color: #132a4d; }
    #psTemplate option { background:#0a182e; color:#fff; }
    #psVars .field label { font-size:12.5px; font-weight:600; letter-spacing:.02em; color:#c8d8ec; margin-bottom:7px; }
    #psVars .field input[type=text], #psVars .field select {
      appearance:none; -webkit-appearance:none;
      background: rgba(0,0,0,.28); border:1px solid var(--border); border-radius:12px;
      color:#fff; font-size:14.5px; padding:12px 14px; transition:border-color .18s;
    }
    #psVars .field select { background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2352a0ff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>"); background-repeat:no-repeat; background-position:right 14px center; padding-right:40px; cursor:pointer; }
    #psVars .field input[type=text]:focus, #psVars .field select:focus { outline:none; border-color:var(--blue2); }
    #psVars .field select option { background:#0a182e; }
    .ps-help { font-size:12px; color:var(--muted); margin-top:6px; line-height:1.5; }
  
