.pf-tool{--pf-paper:#fffefc;--pf-line:rgb(39 39 39 / 0.08);--pf-line-strong:rgb(39 39 39 / 0.14);--pf-fg:var(--color-fg-primary, #272727);--pf-muted:rgb(39 39 39 / 0.7);--pf-brand:var(--color-fg-brand, #0082fb);--pf-brand-soft:rgb(0 130 251 / 0.1);--pf-warn:#9a5b00;font-family:var(--font-sans);color:var(--pf-fg)}.pf-tool *,.pf-tool *::before,.pf-tool *::after{box-sizing:border-box}.pf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pf-tool[data-loading] .pf-dropzones{opacity:.55}.pf-dropzones.is-compact{margin-bottom:16px}.pf-drop{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:160px;padding:22px 22px 20px;background:var(--pf-paper);border:1px dashed var(--pf-line-strong);border-radius:16px;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}.pf-drop:hover,.pf-drop:focus-visible,.pf-drop.is-drag{border-color:var(--pf-brand);background:rgb(0 130 251/4%)}.pf-drop.is-filled{border-style:solid;min-height:0;padding:14px 18px}.pf-drop-kicker{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--pf-brand)}.pf-drop-name{max-width:100%;overflow-wrap:anywhere;font-family:var(--font-heading,var(--font-sans));font-size:1.15rem;font-weight:500;line-height:1.3}.pf-drop.is-filled .pf-drop-name{font-size:1rem}.pf-drop-meta{font-size:.875rem;color:var(--pf-muted)}.pf-drop input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.pf-error,.pf-status{margin:14px 0 0;font-size:.9rem;line-height:1.4}.pf-error,.pf-form-error{color:#9f1d1d}.pf-status{display:flex;align-items:center;gap:8px;color:var(--pf-muted)}.pf-status[hidden]{display:none}.pf-error-link{display:inline-block;margin-top:6px;font-size:.9rem;font-weight:600;color:var(--pf-brand);text-decoration:underline;text-underline-offset:2px}.pf-error-link[hidden]{display:none}.pf-lock{display:flex;flex-direction:column;gap:14px;max-width:460px;margin-top:16px;padding:20px;background:var(--pf-paper);border:1px solid var(--pf-line);border-radius:14px}.pf-lock[hidden]{display:none}.pf-lock-title{margin:0;font-family:var(--font-heading,var(--font-sans));font-size:1.05rem;font-weight:500}.pf-lock-body,.pf-lock-note{margin:0;font-size:.875rem;line-height:1.45;color:var(--pf-muted)}.pf-lock-note{font-size:.8125rem}.pf-lock .pf-form-error[hidden]{display:none}.pf-status-spin,.pf-sheet-spin{display:none;width:16px;height:16px;border:2px solid var(--pf-line-strong);border-top-color:var(--pf-brand);border-radius:50%;flex-shrink:0;animation:pf-spin .7s linear infinite}.pf-status.is-busy .pf-status-spin{display:block}@keyframes pf-spin{to{transform:rotate(360deg)}}.pf-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin-top:18px}.pf-workspace[hidden]{display:none}@media(min-width:900px){.pf-workspace{grid-template-columns:minmax(0,1fr)minmax(300px,380px);align-items:start;gap:24px}.pf-panel{position:sticky;top:96px}}.pf-preview{min-width:0}.pf-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.pf-preview-label{font-size:.875rem;font-weight:600}.pf-pager{display:flex;align-items:center;gap:8px}.pf-pager-label{min-width:7.5em;text-align:center;font-size:.875rem;color:var(--pf-muted);font-variant-numeric:tabular-nums}.pf-pager-btn{min-width:40px;padding:6px 10px;line-height:1}.pf-sheet{position:relative;display:flex;align-items:center;justify-content:center;min-height:320px;padding:20px;background:rgb(39 39 39/4%);border:1px solid var(--pf-line);border-radius:14px;overflow:hidden}.pf-canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 1px 10px rgb(39 39 39/.1);transition:opacity .15s ease}.pf-canvas[data-empty]{width:min(100%,360px);aspect-ratio:1/1.414}.pf-sheet.is-updating .pf-canvas{opacity:.55}.pf-sheet.is-updating .pf-sheet-spin{display:block;position:absolute;top:14px;right:14px;width:20px;height:20px}.pf-preview-note{margin:10px 0 0;font-size:.875rem;color:var(--pf-muted)}.pf-panel{min-width:0;display:flex;flex-direction:column;gap:16px;padding:20px;background:var(--pf-paper);border:1px solid var(--pf-line);border-radius:14px}.pf-fields{min-width:0;margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:16px}.pf-fields:disabled{opacity:.6}.pf-panel [hidden]{display:none}.pf-panel .is-off{opacity:.5}.pf-panel .is-off .pf-check{cursor:not-allowed}.pf-note{margin:0;padding:10px 12px;font-size:.875rem;line-height:1.4;color:var(--pf-warn);background:rgb(255 176 32/.12);border-radius:10px}.pf-group,.pf-field{display:flex;flex-direction:column;gap:8px;min-width:0}.pf-row{display:flex;flex-wrap:wrap;gap:16px}.pf-row>*{flex:1 1 140px}.pf-row>.pf-field-narrow{flex:0 1 110px}.pf-label{display:flex;justify-content:space-between;gap:8px;font-size:.875rem;font-weight:600}.pf-out{font-weight:400;color:var(--pf-muted);font-variant-numeric:tabular-nums}.pf-hint{margin:-8px 0 0;font-size:.8125rem;line-height:1.45;color:var(--pf-muted)}.pf-group .pf-hint,.pf-findings .pf-hint,.pf-result .pf-hint,.pf-check-hint{margin:0}.pf-check-hint{display:block;margin-top:4px;font-weight:400}.pf-input{width:100%;min-width:0;padding:9px 12px;font:inherit;font-size:.9375rem;color:var(--pf-fg);background:#fff;border:1px solid var(--pf-line-strong);border-radius:10px}.pf-input:focus-visible,.pf-range:focus-visible,.pf-seg-item input:focus-visible+span,.pf-spot input:focus-visible+.pf-spot-mark,.pf-swatch input:focus-visible+.pf-swatch-dot,.pf-level input:focus-visible+.pf-level-body,.pf-check input:focus-visible{outline:2px solid var(--pf-brand);outline-offset:2px}.pf-range{width:100%;accent-color:var(--pf-brand)}.pf-secret{display:flex;align-items:stretch;gap:8px;min-width:0}.pf-secret .pf-input{flex:auto}.pf-reveal{flex-shrink:0;min-width:72px;border-radius:10px}.pf-reveal:focus-visible{outline:2px solid var(--pf-brand);outline-offset:2px}.pf-check{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;line-height:1.4;cursor:pointer}.pf-check[hidden]{display:none}.pf-check input{width:18px;height:18px;margin:1px 0 0;flex-shrink:0;accent-color:var(--pf-brand)}.pf-chip{appearance:none;background:0 0;border:1px solid var(--pf-line-strong);border-radius:999px;padding:7px 14px;font:inherit;font-size:.875rem;cursor:pointer;color:var(--pf-fg)}.pf-chip:hover{background:rgb(39 39 39/4%)}.pf-chip.is-active{background:var(--pf-brand-soft);border-color:var(--pf-brand);color:var(--pf-brand)}.pf-chip:disabled{opacity:.45;cursor:not-allowed}.pf-chip[hidden]{display:none}.pf-presets{display:flex;flex-wrap:wrap;gap:6px}.pf-seg{display:flex;flex-wrap:wrap;gap:6px}.pf-seg-item{position:relative;cursor:pointer}.pf-seg-item input,.pf-spot input,.pf-swatch input,.pf-level input{position:absolute;opacity:0;width:1px;height:1px}.pf-seg-item span{display:inline-flex;align-items:center;min-height:36px;padding:7px 14px;font-size:.875rem;white-space:nowrap;border:1px solid var(--pf-line-strong);border-radius:999px;font-variant-numeric:tabular-nums}.pf-seg-item:hover span{background:rgb(39 39 39/4%)}.pf-seg-item input:checked+span{background:var(--pf-brand-soft);border-color:var(--pf-brand);color:var(--pf-brand)}.pf-seg-sub{margin-left:.4em;font-size:.75rem;color:var(--pf-muted)}.pf-seg-item input:checked+span .pf-seg-sub{color:inherit;opacity:.8}.pf-op-hint{margin:0;padding:8px 12px;font-size:.8125rem;line-height:1.45;background:rgb(39 39 39/4%);border-radius:10px;font-variant-numeric:tabular-nums}.pf-op-hint:empty{display:none}.pf-op-hint.is-error{color:#9f1d1d;background:rgb(159 29 29/6%)}.pf-spots{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto 1fr auto;gap:6px;width:132px;aspect-ratio:1/1.25;padding:8px;background:#fff;border:1px solid var(--pf-line-strong);border-radius:8px}.pf-spots-body{grid-column:1/-1;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:0 6px}.pf-spots-body span{height:4px;border-radius:2px;background:rgb(39 39 39/.1)}.pf-spots-body span:last-child{width:60%}.pf-spot{position:relative;display:flex;justify-content:center;cursor:pointer}.pf-spot-tl,.pf-spot-bl{justify-content:flex-start}.pf-spot-tr,.pf-spot-br{justify-content:flex-end}.pf-spot-mark{display:inline-flex;align-items:center;justify-content:center;width:26px;height:22px;font-size:11px;font-weight:600;color:transparent;border:1px dashed var(--pf-line-strong);border-radius:5px}.pf-spot:hover .pf-spot-mark{border-color:var(--pf-brand)}.pf-spot input:checked+.pf-spot-mark{color:#fff;background:var(--pf-brand);border:1px solid var(--pf-brand)}.pf-swatches{display:flex;flex-wrap:wrap;gap:10px}.pf-swatch{position:relative;cursor:pointer}.pf-swatch-dot{display:block;width:30px;height:30px;border-radius:50%;background:var(--pf-swatch);box-shadow:inset 0 0 0 1px rgb(39 39 39/.12)}.pf-swatch input:checked+.pf-swatch-dot{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--pf-brand)}.pf-levels{display:flex;flex-direction:column;gap:8px}.pf-level{position:relative;cursor:pointer}.pf-level-body{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid var(--pf-line-strong);border-radius:12px;transition:border-color .15s ease,background .15s ease}.pf-level:hover .pf-level-body{border-color:rgb(39 39 39/.3)}.pf-level input:checked+.pf-level-body{border-color:var(--pf-brand);background:rgb(0 130 251/5%)}.pf-level-title{font-size:.9375rem;font-weight:600}.pf-level-text{font-size:.8125rem;line-height:1.45;color:var(--pf-muted)}.pf-level-warn{font-size:.8125rem;font-weight:600;color:var(--pf-warn)}.pf-logo{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pf-logo-name{min-width:0;max-width:100%;overflow-wrap:anywhere;font-size:.875rem}.pf-logo-name[hidden]{display:none}.pf-findings{min-width:0}.pf-stack{display:flex;flex-direction:column;gap:8px}.pf-note a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}.pf-facts{margin:0;display:flex;flex-direction:column;border:1px solid var(--pf-line);border-radius:10px;overflow:hidden}.pf-fact{display:grid;grid-template-columns:minmax(96px,36%)minmax(0,1fr);gap:10px;padding:8px 12px;font-size:.8125rem;line-height:1.4}.pf-fact+.pf-fact{border-top:1px solid var(--pf-line)}.pf-fact dt{font-weight:600}.pf-fact dd{margin:0;min-width:0;overflow-wrap:anywhere;color:var(--pf-muted)}.pf-form-error{margin:0;font-size:.875rem;line-height:1.4}.pf-form-error[hidden],.pf-result[hidden],.pf-note[hidden],.pf-preview-note[hidden]{display:none}.pf-result{display:flex;flex-direction:column;gap:10px}.pf-result-title{margin:0 0 6px;font-size:.875rem;font-weight:600}.pf-removed{display:flex;flex-direction:column;gap:10px}.pf-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.pf-tags li{padding:3px 10px;font-size:.8125rem;border:1px solid var(--pf-line-strong);border-radius:999px}.pf-sizes{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pf-size{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--pf-line);border-radius:10px}.pf-size.is-after{border-color:var(--pf-brand);background:rgb(0 130 251/5%)}.pf-size-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--pf-muted)}.pf-size-value{font-family:var(--font-heading,var(--font-sans));font-size:1.25rem;font-weight:500;font-variant-numeric:tabular-nums}.pf-gain{margin:8px 0 0;font-size:.9rem;font-weight:600;color:#18794e}.pf-saved{margin:0;font-size:.8125rem;color:var(--pf-muted);overflow-wrap:anywhere}.pf-run-reason{margin:0;font-size:.8125rem;line-height:1.45;color:var(--pf-muted)}.pf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pf-primary{appearance:none;flex:auto;min-height:44px;padding:10px 18px;font:inherit;font-size:.9375rem;font-weight:600;color:#fff;background:var(--pf-brand);border:1px solid var(--pf-brand);border-radius:999px;cursor:pointer}.pf-primary:hover{filter:brightness(.95)}.pf-primary:disabled{opacity:.45;cursor:not-allowed}.pf-tool[data-busy] .pf-primary{cursor:progress}.pf-privacy{display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:.875rem;color:var(--pf-muted)}.pf-privacy p{margin:0}.pf-privacy-dot{width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--color-accent-green-medium,#6edb8c);flex-shrink:0}.pf-privacy-badge{font-weight:600;color:var(--pf-fg);margin-right:.35em}@media(max-width:767px){.pf-sheet{min-height:240px;padding:12px}.pf-panel{padding:16px}.pf-chip,.pf-seg-item span{min-height:44px}.pf-pager-btn{min-width:44px}.pf-actions .pf-primary{flex-basis:100%}}