.eyebrow-pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:var(--accent-primary-a);color:var(--accent-primary);font-size:var(--fs-xxs);font-weight:var(--fw-semi);letter-spacing:.15em;text-transform:uppercase}.tool-page{padding-block:var(--sp-12) var(--sp-16)}.tool-header{text-align:center;max-width:680px;margin:0 auto var(--sp-12);display:flex;flex-direction:column;align-items:center;gap:var(--sp-4)}.tool-header h1{font-family:var(--font-display);font-size:var(--fs-3xl);line-height:var(--lh-3xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--fg-primary);margin:0}.tool-header .lede{font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--fg-muted);margin:0}.spf-generator{max-width:1080px;margin:0 auto}.sg-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:var(--sp-8);align-items:start}.sg-section{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r-card);padding:var(--sp-6);margin-bottom:var(--sp-4)}.sg-section-title{font-family:var(--font-display);font-size:var(--fs-lg);line-height:var(--lh-lg);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--fg-primary);margin:0}.sg-section-sub{display:block;margin-top:var(--sp-1);font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--fw-regular);color:var(--fg-muted)}details.sg-advanced>summary{list-style:none;cursor:pointer;display:block;padding-right:var(--sp-8);position:relative;user-select:none}details.sg-advanced>summary::-webkit-details-marker{display:none}details.sg-advanced>summary:after{content:"";position:absolute;right:var(--sp-1);top:7px;width:9px;height:9px;border-right:2px solid var(--fg-muted);border-bottom:2px solid var(--fg-muted);transform:rotate(45deg);transition:transform .15s var(--ease-out)}details.sg-advanced[open]>summary:after{transform:rotate(-135deg);top:11px}details.sg-advanced[open]>summary{margin-bottom:var(--sp-5);padding-bottom:var(--sp-4);border-bottom:1px solid var(--card-border)}.sg-section-body{display:flex;flex-direction:column;gap:var(--sp-5)}.sg-field{display:flex;flex-direction:column;gap:var(--sp-2)}.sg-section>.sg-field+.sg-field{margin-top:var(--sp-5)}.sg-label{font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--fw-semi);color:var(--fg-primary);display:inline-flex;align-items:center;gap:var(--sp-2)}.sg-sublabel{font-size:var(--fs-xs);line-height:var(--lh-xs);font-weight:var(--fw-regular);color:var(--fg-muted)}.sg-tag{font-family:var(--font-mono);font-size:var(--fs-xxs);line-height:1;font-weight:var(--fw-regular);color:var(--fg-muted);background:var(--page-bg);border:1px solid var(--card-border);padding:2px 6px;border-radius:var(--r-xs)}.sg-field input[type=text]{width:100%;padding:10px 14px;background:var(--page-bg);border:1px solid var(--card-border);border-radius:var(--r-sm);color:var(--fg-body);font-family:var(--font-ui);font-size:var(--fs-base);line-height:var(--lh-base);transition:border-color .12s var(--ease-out),box-shadow .12s}.sg-field input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-a)}.sg-field input::placeholder{color:var(--fg-subtle)}.sg-error{display:none;font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--accent-secondary)}.sg-list{display:flex;flex-direction:column;gap:var(--sp-2)}.sg-list:empty{display:none}.sg-list-row{display:flex;gap:var(--sp-2);align-items:center}.sg-list-row input{flex:1;min-width:0}.sg-list-remove{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--card-border);background:var(--page-bg);color:var(--fg-muted);border-radius:var(--r-sm);font-size:var(--fs-lg);line-height:1;cursor:pointer;transition:background .12s var(--ease-out),color .12s,border-color .12s;flex-shrink:0}.sg-list-remove:hover{background:var(--card-bg-raised);color:var(--fg-primary);border-color:var(--card-border-strong)}.sg-list-row:only-child .sg-list-remove{display:none}.sg-add-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) 0;font-family:var(--font-ui);font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--fw-semi);background:transparent;border:none;color:var(--accent-primary);cursor:pointer;margin-top:var(--sp-1);transition:color .12s var(--ease-out)}.sg-add-btn:hover{text-decoration:underline;text-underline-offset:3px}.sg-add-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-primary-a);border-radius:var(--r-xs)}.sg-add-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--accent-primary-a);font-size:14px;font-weight:var(--fw-semi);line-height:1}.sg-quick-add{margin-top:var(--sp-3);display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.sg-quick-add-label{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--fg-muted);margin-right:var(--sp-1)}.sg-chip{padding:5px 12px;background:var(--card-bg-raised);border:1px solid var(--card-border);border-radius:var(--r-pill);color:var(--fg-body);font-family:var(--font-ui);font-size:var(--fs-xs);line-height:var(--lh-xs);font-weight:var(--fw-medium);cursor:pointer;transition:background .12s var(--ease-out),border-color .12s,color .12s}.sg-chip:hover{background:var(--accent-primary-a);color:var(--accent-primary);border-color:var(--accent-primary)}.sg-radios--block{display:flex;flex-direction:column;gap:var(--sp-2)}.sg-radio{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--card-border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .12s var(--ease-out),background .12s}.sg-radio:hover{border-color:var(--card-border-strong);background:var(--card-bg-raised)}.sg-radio input[type=radio]{margin:4px 0 0;flex-shrink:0;accent-color:var(--accent-primary)}.sg-radio:has(input:checked){border-color:var(--accent-primary);background:var(--accent-primary-a)}.sg-radio-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.sg-radio-head{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--fg-primary)}.sg-radio-head b{font-family:var(--font-mono);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--fg-primary);margin-right:var(--sp-2)}.sg-radio-text em{font-style:normal;font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--fg-muted)}.sg-radio:has(input:checked) .sg-radio-head b{color:var(--accent-primary)}.sg-toggle{display:flex;align-items:center;gap:var(--sp-3);cursor:pointer}.sg-toggle input[type=checkbox]{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent-primary)}.sg-toggle-label{font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--fw-semi);color:var(--fg-primary);display:inline-flex;align-items:center;gap:var(--sp-2)}.sg-toggle-field[hidden]{display:none}.sg-toggle-field{margin-top:var(--sp-3);padding-left:28px;display:flex;flex-direction:column;gap:var(--sp-2)}.sg-actions{display:flex;gap:var(--sp-3);align-items:stretch;margin-top:var(--sp-2)}.sg-actions .sg-generate{flex:1;justify-content:center}.sg-output{position:sticky;top:96px}.sg-output-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r-card);padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-4)}.sg-output-header{display:flex;flex-direction:column;gap:var(--sp-2)}.sg-output-eyebrow{font-size:var(--fs-xxs);line-height:var(--lh-xxs);font-weight:var(--fw-semi);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--fg-subtle)}.sg-output-empty-msg{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--fg-muted)}.sg-output-card[data-state=filled] .sg-output-empty-msg{display:none}.sg-output-meta{display:flex;flex-direction:column;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--card-border)}.sg-output-row{display:grid;grid-template-columns:84px 1fr;gap:var(--sp-3);align-items:baseline}.sg-output-label{font-size:var(--fs-xxs);line-height:var(--lh-xxs);font-weight:var(--fw-semi);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--fg-subtle)}.sg-output-value{font-family:var(--font-mono);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--fg-primary);word-break:break-all}.sg-output-record-wrap{display:flex;flex-direction:column;gap:var(--sp-2)}.sg-output-record{font-family:var(--font-mono);font-size:var(--fs-sm);line-height:var(--lh-md);color:var(--fg-primary);background:var(--page-bg);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);border:1px solid var(--card-border);white-space:pre-wrap;word-break:break-all;margin:0;min-height:56px}.sg-output-card[data-state=empty] .sg-output-value,.sg-output-card[data-state=empty] .sg-output-record{color:var(--fg-subtle)}.sg-copy-btn{width:100%;padding:11px 18px;font-family:var(--font-ui);font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:var(--fw-semi);background:var(--card-bg-raised);color:var(--fg-primary);border:1px solid var(--card-border);border-radius:var(--r-pill);cursor:pointer;transition:background .12s var(--ease-out),border-color .12s,color .12s}.sg-output-card[data-state=empty] .sg-copy-btn{opacity:.45;pointer-events:none}.sg-copy-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.sg-copy-btn.copied{background:var(--accent-success);color:var(--page-bg);border-color:var(--accent-success)}.sg-output-hint{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--fg-muted);margin:0}.sg-output-hint.sg-warn{color:var(--accent-warning)}.sg-output-hint:empty{display:none}.sg-output-card[data-state=empty] [data-output-lookups]{display:none}.sg-info-wrap{position:relative;display:inline-flex;align-items:center}.sg-info-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:transparent;border:none;color:var(--fg-subtle);cursor:help;border-radius:50%;transition:color .12s var(--ease-out),background .12s}.sg-info-btn:hover,.sg-info-btn:focus{color:var(--accent-primary);background:var(--accent-primary-a);outline:none}.sg-info-btn svg{width:14px;height:14px}.sg-tooltip{position:absolute;bottom:calc(100% + var(--sp-2));left:50%;transform:translate(-50%) translateY(2px);width:max-content;max-width:min(280px,calc(100vw - var(--sp-6)));padding:var(--sp-3) var(--sp-4);background:var(--card-bg-raised);border:1px solid var(--card-border-strong);border-radius:var(--r-sm);font-size:var(--fs-xs);line-height:var(--lh-sm);font-weight:var(--fw-regular);color:var(--fg-body);box-shadow:0 12px 28px #00000052,0 4px 8px #0000002e;pointer-events:none;opacity:0;transition:opacity .15s var(--ease-out),transform .15s var(--ease-out);z-index:100;text-transform:none;letter-spacing:0}.sg-info-btn:hover+.sg-tooltip,.sg-info-btn:focus+.sg-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.sg-tooltip code{font-family:var(--font-mono);font-size:.92em;padding:1px 5px;background:var(--page-bg);border:1px solid var(--card-border);border-radius:var(--r-xs);color:var(--fg-primary)}.sg-tooltip:after{content:"";position:absolute;top:100%;left:50%;width:8px;height:8px;background:var(--card-bg-raised);border-right:1px solid var(--card-border-strong);border-bottom:1px solid var(--card-border-strong);transform:translate(-50%) rotate(45deg);margin-top:-4px}.spf-info-section{padding-block:var(--sp-12)}.spf-info-section--alt{background:var(--page-bg-alt)}.spf-info-section .section-head,main>section.faq .section-head,.spf-prose,.spf-table-wrap,main>section.faq .faq-grid{max-width:1080px;margin-left:auto;margin-right:auto}.spf-info-section .section-head,main>section.faq .section-head{text-align:left;margin-bottom:var(--sp-8);display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3)}.spf-info-section .section-head h2,main>section.faq .section-head h2{font-family:var(--font-display);font-size:var(--fs-2xl);line-height:var(--lh-2xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--fg-primary);margin:0}.spf-prose{color:var(--fg-body);font-size:var(--fs-md);line-height:var(--lh-lg)}.spf-prose>*{max-width:760px}.spf-prose p{margin:0 0 var(--sp-4)}.spf-prose p:last-child{margin-bottom:0}.spf-prose ul,.spf-prose ol{margin:0 0 var(--sp-5);padding-left:var(--sp-5)}.spf-prose li{margin-bottom:var(--sp-2)}.spf-prose code{font-family:var(--font-mono);font-size:.92em;padding:1px 6px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r-xs);color:var(--fg-primary)}.spf-prose-code{display:block;font-family:var(--font-mono);font-size:var(--fs-sm);line-height:var(--lh-md);color:var(--fg-primary);background:var(--card-bg);padding:var(--sp-4) var(--sp-5);border-radius:var(--r-sm);border:1px solid var(--card-border);margin:0 0 var(--sp-5);overflow-x:auto;white-space:pre-wrap;word-break:break-all}.spf-steps{list-style:none;padding:0;margin:0 0 var(--sp-5);counter-reset:spf-step;display:flex;flex-direction:column;gap:var(--sp-5)}.spf-steps>li{counter-increment:spf-step;position:relative;padding-left:52px;min-height:36px;margin:0}.spf-steps>li:before{content:counter(spf-step);position:absolute;left:0;top:0;width:36px;height:36px;display:grid;place-items:center;background:var(--accent-primary-a);color:var(--accent-primary);border-radius:50%;font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:var(--fw-bold);line-height:1}.spf-steps h3{font-family:var(--font-display);font-size:var(--fs-md);line-height:var(--lh-md);font-weight:var(--fw-semi);color:var(--fg-primary);margin:0 0 var(--sp-2);letter-spacing:var(--ls-tight)}.spf-steps p{margin:0;color:var(--fg-body)}.spf-steps--compact>li{min-height:auto;padding-top:6px;padding-left:44px}.spf-steps--compact>li:before{width:28px;height:28px;font-size:var(--fs-xs)}.spf-table-wrap{overflow-x:auto;border:1px solid var(--card-border);border-radius:var(--r-card);background:var(--card-bg)}.spf-tag-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);line-height:var(--lh-sm)}.spf-tag-table th,.spf-tag-table td{padding:var(--sp-3) var(--sp-4);text-align:left;vertical-align:top;border-bottom:1px solid var(--card-border)}.spf-tag-table thead th{font-size:var(--fs-xxs);font-weight:var(--fw-semi);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--fg-subtle);background:var(--page-bg);border-bottom:1px solid var(--card-border-strong)}.spf-tag-table tbody tr:last-child td{border-bottom:none}.spf-tag-table tbody tr:hover td{background:var(--card-bg-raised)}.spf-tag-table td:first-child{width:130px;white-space:nowrap}.spf-tag-table td code{font-family:var(--font-mono);font-size:.95em;padding:1px 6px;background:var(--page-bg);border:1px solid var(--card-border);border-radius:var(--r-xs);color:var(--fg-primary);white-space:nowrap}.spf-tag-table td:first-child code{font-weight:var(--fw-semi)}main>section.faq{padding-block:var(--sp-12)}.faq-item summary .faq-q{flex:1 1 auto;min-width:0;color:var(--fg-primary);font-weight:var(--fw-semi);font-size:var(--fs-md);line-height:var(--lh-md)}.faq-item summary code,.faq-item p code{font-family:var(--font-mono);font-size:.92em;padding:1px 6px;background:var(--page-bg);border:1px solid var(--card-border);border-radius:var(--r-xs);color:var(--fg-primary);white-space:nowrap}@media(max-width:880px){.sg-grid{grid-template-columns:1fr;gap:var(--sp-6)}.sg-output{position:static}.tool-header h1{font-size:var(--fs-2xl);line-height:var(--lh-2xl)}.tool-header .lede{font-size:var(--fs-md);line-height:var(--lh-md)}}@media(max-width:760px){.spf-info-section,main>section.faq{padding-block:var(--sp-10)}.spf-prose{font-size:var(--fs-base);line-height:var(--lh-lg)}.spf-tag-table{font-size:var(--fs-xs)}.spf-tag-table th,.spf-tag-table td{padding:var(--sp-2) var(--sp-3)}.spf-tag-table td:first-child{width:auto}}
