/* Plugins: the site's paper, ink and serif, with the desktop's own pictures. */
.plugins-page code,.plugins-page kbd{font:0.86em/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.plugins-page code{background:#ebe8dc;border-radius:4px;padding:2px 5px}
.plugins-page kbd{border:1px solid #c8c6b6;border-bottom-width:2px;border-radius:4px;padding:1px 5px;background:#fffdf6}

/* Hero */
.pl-hero{padding-top:56px;padding-bottom:64px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:56px;align-items:center}
.pl-hero-art{margin:0;background:#101416;border-radius:16px;padding:14px;box-shadow:0 30px 60px -30px #172c3599;transform:rotate(1deg)}
.pl-hero-art img{display:block;width:100%;height:auto;border-radius:9px}
.pl-hero h1{font-size:clamp(46px,4.6vw,70px);line-height:1.03;letter-spacing:-2.2px;max-width:900px}
.pl-lede{font:18px/1.7 var(--sans);color:var(--muted);max-width:640px;margin-top:28px}
.pl-start{margin-top:40px;max-width:640px;padding:22px 24px;border:1px solid var(--line);border-radius:12px;background:#fffdf7}
.pl-start-text{font:15px/1.65 var(--sans);color:var(--ink)}
.pl-computer-alt{margin-top:14px}
.pl-computer-alt summary{font:13px/1.6 var(--sans);color:#375f6a;cursor:pointer;width:max-content}
.pl-computer-alt summary:focus-visible{outline:2px solid #375f6a;outline-offset:3px}
.pl-computer{margin-top:14px}
.pl-computer label{display:block;font:11px/1.5 var(--sans);text-transform:uppercase;letter-spacing:1.8px;color:#586b68;margin-bottom:10px}
.pl-computer-row{display:flex;gap:10px}
.pl-computer input{flex:1;min-width:0;font:15px/1.4 var(--sans);color:var(--ink);background:var(--paper);border:1px solid #bdbfae;border-radius:8px;padding:11px 12px}
.pl-computer input:focus{outline:2px solid #375f6a;outline-offset:1px;border-color:transparent}
.pl-computer button[type=submit],.pl-install,.pl-pill{font:16px/1 var(--serif);color:var(--paper);background:var(--ink);border:1px solid var(--ink);border-radius:999px;padding:12px 22px;cursor:pointer;text-decoration:none;display:inline-block}
.pl-computer button[type=submit]:hover,.pl-install:hover,.pl-pill:hover{background:#25414c}
.pl-computer button:focus-visible,.pl-install:focus-visible,.pl-filters button:focus-visible,.pl-copy:focus-visible,.pl-link-button:focus-visible{outline:2px solid #375f6a;outline-offset:3px}
.pl-help{font:12px/1.65 var(--sans);color:var(--muted);margin-top:12px}
.pl-computer-saved{font:14px/1.6 var(--sans);color:var(--ink);margin-top:12px}
.pl-link-button{font:inherit;color:var(--ink);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.pl-error{font:13px/1.6 var(--sans);color:#9b3b2a;margin-top:8px}
.pl-error:empty{display:none}

/* Sections */
.pl-section-head{max-width:720px;margin-bottom:44px}
.pl-section-head h2{font-size:clamp(34px,3.6vw,52px);letter-spacing:-1.6px}
.pl-section-head>p:not(.eyebrow){font:16px/1.75 var(--sans);color:var(--muted);margin-top:16px}
.pl-featured{padding-top:72px;padding-bottom:40px;border-top:1px solid var(--line)}
.pl-filters{display:flex;gap:8px;flex-wrap:wrap;margin:-16px 0 36px}
.pl-filters button{font:13px/1 var(--sans);color:var(--ink);background:transparent;border:1px solid #bdbfae;border-radius:999px;padding:9px 15px;cursor:pointer}
.pl-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* A plugin: the picture of what it draws, then the words. */
.pl-card{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:64px;align-items:start;padding:52px 0;border-top:1px solid var(--line)}
.pl-card:first-of-type{border-top:0;padding-top:8px}
.pl-card[hidden]{display:none}
.pl-shot{margin:0;background:#101416;border-radius:14px;padding:22px 22px 0;box-shadow:0 22px 46px -28px #172c3580;overflow:hidden}
.pl-shot img{display:block;width:100%;height:auto;border-radius:6px 6px 0 0}
.pl-title{display:flex;align-items:center;gap:16px}
.pl-title img{border-radius:11px;flex:none}
.pl-title h3{font-size:36px;letter-spacing:-1.1px;line-height:1.05}
.pl-meta{font:12px/1.5 var(--sans);color:#697977;margin-top:6px;letter-spacing:.3px}
.pl-summary{font:16px/1.8 var(--sans);color:var(--muted);margin-top:22px}
.pl-summary strong{color:var(--ink)}
.pl-points{list-style:none;padding:0;margin:20px 0 0}
.pl-points li{font:14px/1.6 var(--sans);color:var(--ink);padding:9px 0 9px 22px;border-top:1px solid var(--line);position:relative}
.pl-points li:before{content:'';position:absolute;left:2px;top:17px;width:7px;height:7px;border-radius:50%;background:#5d8a7d}
.pl-perms{margin-top:18px;border:1px solid var(--line);border-radius:10px;padding:12px 16px;background:#fffdf7}
.pl-perms summary{cursor:pointer;font:13px/1.5 var(--sans);color:var(--ink)}
.pl-perms ul{margin:10px 0 2px;padding-left:18px}
.pl-perms li{font:13px/1.7 var(--sans);color:var(--muted)}
.pl-actions{display:flex;align-items:center;gap:18px;margin-top:24px;flex-wrap:wrap}
.pl-actions small{font:12px/1.5 var(--sans);color:var(--muted)}

/* Community */
.pl-community{padding-top:56px;border-top:1px solid var(--line)}
.pl-community-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.pl-mini{border:1px solid var(--line);border-radius:12px;padding:20px;background:#fffdf7;display:flex;flex-direction:column;gap:10px}
.pl-mini h3{font-size:22px;letter-spacing:-.5px}
.pl-mini p{font:13px/1.65 var(--sans);color:var(--muted)}
.pl-mini .pl-install{align-self:flex-start;font-size:14px;padding:10px 18px;margin-top:auto}

/* Safety */
.pl-how{display:grid;grid-template-columns:1fr minmax(0,460px);gap:40px 72px;padding-top:80px;padding-bottom:88px;border-top:1px solid var(--line);align-items:start}
.pl-how h2{font-size:clamp(34px,3.6vw,52px);letter-spacing:-1.6px}
.pl-how-copy>p:not(.eyebrow){font:16px/1.8 var(--sans);color:var(--muted);margin-top:18px;max-width:520px}
.pl-how figure{margin:0;grid-row:span 2;background:#101416;border-radius:14px;padding:18px;box-shadow:0 22px 46px -28px #172c3580}
.pl-how figure img{display:block;width:100%;height:auto;border-radius:8px}
.pl-promises{list-style:none;padding:0;margin:0}
.pl-promises li{font:14px/1.75 var(--sans);color:var(--muted);padding:16px 0;border-top:1px solid var(--line)}
.pl-promises strong{display:block;font:400 19px/1.3 var(--serif);color:var(--ink);margin-bottom:4px}

/* Write one */
.pl-write{padding-top:80px;padding-bottom:88px;border-top:1px solid var(--line)}
.pl-steps{list-style:none;counter-reset:step;padding:0;margin:0;display:grid;gap:44px}
.pl-steps>li{counter-increment:step;display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:20px}
.pl-steps>li:before{content:counter(step);grid-row:span 4;font:11px/1 var(--sans);color:#697977;border:1px solid #bdbfae;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;margin-top:2px}
.pl-steps h3{font-size:26px;letter-spacing:-.7px;line-height:1.2}
.pl-steps p{font:15px/1.75 var(--sans);color:var(--muted);margin-top:10px;max-width:700px}
.pl-code{position:relative;margin:16px 0 0;background:#13191c;color:#dfe8e3;border-radius:12px;padding:20px 22px;overflow-x:auto;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;max-width:820px}
.pl-code code{background:none;padding:0;font:inherit;color:inherit;white-space:pre}
.pl-copy{position:absolute;top:10px;right:10px;font:12px/1 var(--sans);color:#dfe8e3;background:#ffffff12;border:1px solid #ffffff26;border-radius:6px;padding:7px 10px;cursor:pointer}
.pl-copy:hover{background:#ffffff22}
.pl-reference{margin-top:56px;display:grid;gap:14px;max-width:880px}
.pl-reference details{border:1px solid var(--line);border-radius:12px;padding:18px 22px;background:#fffdf7}
.pl-reference summary{cursor:pointer;font-size:21px;letter-spacing:-.4px}
.pl-api{display:grid;grid-template-columns:minmax(150px,auto) 1fr;gap:12px 22px;margin:18px 0 6px}
.pl-api dt{font:13px/1.6 var(--sans)}
.pl-api dd{margin:0;font:14px/1.65 var(--sans);color:var(--muted)}

/* Share */
.pl-share{padding-top:80px;padding-bottom:88px;border-top:1px solid var(--line)}
.pl-share-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.pl-share-steps li{display:flex;gap:16px;border-top:1px solid var(--line);padding-top:22px}
.pl-share-steps span{font:11px/1 var(--sans);color:#697977;padding-top:6px}
.pl-share-steps h3{font-size:24px;letter-spacing:-.6px}
.pl-share-steps p{font:14px/1.75 var(--sans);color:var(--muted);margin-top:10px}
.pl-share-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:42px}
.pl-text-link{font-size:19px;text-decoration:none;border-bottom:1px solid #526861;padding-bottom:4px}
.pl-wanted{margin-top:72px;background:#e8ece3;border-radius:16px;padding:40px 44px}
.pl-wanted h3{font-size:32px;letter-spacing:-1px}
.pl-wanted>p{font:15px/1.7 var(--sans);color:var(--muted);margin-top:8px}
.pl-wanted ul{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px}
.pl-wanted li{padding:13px 0;border-top:1px solid #cdd3c6;display:flex;flex-direction:column;gap:3px}
.pl-wanted strong{font:400 18px/1.3 var(--serif);color:var(--ink)}
.pl-wanted li span{font:13px/1.6 var(--sans);color:var(--muted)}

.plugins-page .questions{padding-top:76px}
.plugins-page .question-list code{font-size:.85em}

@media(max-width:1000px){
  .pl-hero{grid-template-columns:1fr}
  .pl-hero-art{max-width:560px;transform:none}
  .pl-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
  .pl-how{grid-template-columns:1fr}
  .pl-how figure{grid-row:auto;max-width:520px}
  .pl-share-steps{grid-template-columns:1fr;gap:0}
  .pl-share-steps li{padding:20px 0}
}
@media(max-width:760px){
  .pl-card{grid-template-columns:1fr;gap:28px;padding:40px 0}
  .pl-shot{max-width:440px}
  .pl-title h3{font-size:31px}
  .pl-wanted{padding:28px 22px}
  .pl-wanted ul{grid-template-columns:1fr}
  .pl-api{grid-template-columns:1fr;gap:2px}
  .pl-api dd{margin-bottom:12px}
}
@media(max-width:600px){
  .pl-hero{padding-top:28px;padding-bottom:48px}
  .pl-hero h1{font-size:44px;letter-spacing:-1.7px}
  .pl-lede{font-size:16px}
  .pl-start{padding:18px}
  .pl-computer-row{flex-direction:column}
  .pl-featured,.pl-how,.pl-write,.pl-share{padding-top:56px;padding-bottom:60px}
  .pl-steps>li{grid-template-columns:1fr}
  .pl-steps>li:before{grid-row:auto;margin-bottom:12px}
  .pl-code{font-size:12px;padding:44px 16px 16px}
  .pl-reference details{padding:16px}
}
