.playground{--pg-border:var(--sl-color-gray-5)}.playground *{box-sizing:border-box}.playground .pg-workspace>*,.playground .pg-variants>*,.playground .pg-runbar>*,.playground .pg-controls>*,.playground .pg-files>*{margin-top:0}.pg-intro{border-left:3px solid var(--sl-color-accent);margin-bottom:2rem;padding:.2rem 0 .2rem 1.3rem}.pg-eyebrow{color:var(--sl-color-accent-high);letter-spacing:.12em;font-size:.72rem;font-weight:700}.pg-intro p{letter-spacing:-.035em;margin:.55rem 0;font-size:1.5rem;font-weight:650;line-height:1.3}.pg-intro>span:last-child,.pg-small{color:var(--sl-color-gray-2);font-size:.85rem}.pg-controls,.pg-runbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;display:flex}.playground label{flex-direction:column;gap:.4rem;font-size:.8rem;font-weight:600;display:flex}.playground select,.playground input{background:var(--sl-color-bg);color:var(--sl-color-text);border:1px solid var(--pg-border);font:inherit;border-radius:.4rem;max-width:100%;min-height:44px;padding:.65rem .8rem}.playground button{cursor:pointer;font:inherit;color:var(--sl-color-text);background:var(--sl-color-bg);border:1px solid var(--pg-border);border-radius:.4rem;min-height:44px;padding:.6rem .8rem;font-size:.8rem}.playground button:hover{border-color:var(--sl-color-accent)}.playground button[aria-pressed=true]{background:var(--sl-color-accent-low);border-color:var(--sl-color-accent);color:var(--sl-color-accent-high)}.playground button:disabled{opacity:.5;cursor:not-allowed}.playground :is(button,select,input,textarea):focus-visible{outline:2px solid var(--sl-color-accent);outline-offset:3px}.pg-variants,.pg-runbar>div{gap:.5rem;display:flex}#pg-description{color:var(--sl-color-gray-2);min-height:3.5rem;font-size:.9rem}.pg-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin:1.3rem 0;display:grid}.pg-editor,.pg-results{border:1px solid var(--pg-border);border-radius:.7rem;min-width:0;overflow:hidden}.pg-panel-heading{background:var(--sl-color-bg-nav);border-bottom:1px solid var(--pg-border);justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .9rem;font-size:.85rem;display:flex}.pg-panel-heading button{padding:.35rem .5rem;font-size:.7rem}.pg-files{flex-wrap:wrap;gap:.4rem;padding:.7rem;display:flex}.pg-files button{overflow-wrap:anywhere;text-align:left;max-width:100%;font-size:.7rem}.pg-code-label{overflow-wrap:anywhere;color:var(--sl-color-gray-2);padding:.1rem 1rem .5rem}#pg-code{resize:vertical;border:0;border-block:1px solid var(--pg-border);tab-size:4;background:var(--sl-color-bg);width:100%;min-height:350px;color:var(--sl-color-text);padding:1rem;font:.85rem/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.pg-editor-footer{color:var(--sl-color-gray-2);justify-content:space-between;padding:.5rem 1rem;font-size:.7rem;display:flex}.pg-add{padding:.5rem 1rem;font-size:.8rem}.pg-add summary{cursor:pointer;min-height:44px}.pg-add>div{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.pg-add input{width:100%}.pg-editor .pg-small{padding:0 1rem;font-size:.75rem}.pg-results-body{padding:1rem}#pg-status{margin-top:0;font-size:.9rem}#pg-findings article{border-top:1px solid var(--pg-border);padding-block:1rem}#pg-findings h3{margin:.5rem 0;font-size:1rem}#pg-findings p,#pg-findings li{overflow-wrap:anywhere;font-size:.8rem;line-height:1.65}#pg-findings .pg-badge{border:1px solid var(--pg-border);text-transform:uppercase;border-radius:.25rem;padding:.15rem .4rem;font-size:.65rem;font-weight:700;display:inline-block}#pg-findings .pg-location{text-align:left;overflow-wrap:anywhere;margin:.6rem 0;font-family:monospace;display:block}#pg-findings summary{cursor:pointer;min-height:44px;padding-top:.5rem;font-size:.8rem}.pg-runbar .pg-primary{background:var(--sl-color-accent-high);color:var(--sl-color-accent-low);border-color:#0000;padding-inline:1.4rem;font-weight:700}[hidden]{display:none!important}@media (width>=1150px){body:has(.playground){--sl-content-width:76rem}}@media (width<=800px){.pg-workspace{grid-template-columns:1fr}#pg-code{font-size:16px}.pg-controls>label{width:100%}}
