.pp-page{isolation:isolate;background:radial-gradient(60% 40% at 82% 0%, color-mix(in srgb, var(--sh-wine) 24%, transparent) 0%, transparent 70%), radial-gradient(70% 50% at 18% 8%, color-mix(in srgb, var(--sh-ember-deep) 22%, transparent) 0%, transparent 70%), linear-gradient(180deg, var(--sh-noir-1) 0%, var(--sh-noir) 60%);position:relative;overflow-x:clip}.pp{--pp-panel:color-mix(in srgb, var(--sh-noir-2) 88%, transparent);--pp-panel-solid:var(--sh-noir-2);--pp-raised:var(--sh-smoke);--pp-hair:color-mix(in srgb, var(--sh-gilt) 24%, transparent);--pp-hair-soft:#f4ece31a;--pp-ember:var(--sh-ember);--pp-ember-lit:var(--sh-ember-lit);--pp-ember-deep:var(--sh-ember-deep);--pp-candle:var(--sh-gilt);--pp-text:var(--sh-ink);--pp-dim:var(--sh-ink-dim);--pp-faint:var(--sh-ink-faint);--pp-radius:16px;width:100%;max-width:1320px;color:var(--pp-text);font-family:var(--sh-font-body);margin:0 auto;padding:40px 24px 80px;position:relative}.pp :focus-visible{outline:3px solid var(--pp-candle);outline-offset:2px}.pp-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pp-hero{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end;gap:32px;margin-bottom:28px;display:grid}.pp-title{font-family:var(--sh-font-display);letter-spacing:-.01em;color:var(--pp-text);text-shadow:0 0 36px color-mix(in srgb, var(--sh-ember) 40%, transparent);margin:0 0 12px;font-size:clamp(2.6rem,5.4vw,4.4rem);font-weight:500;line-height:1}.pp-lede{max-width:60ch;color:var(--pp-dim);margin:0;font-size:1.1rem;line-height:1.6}.pp-hero__actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.pp-hero__links{color:var(--pp-dim);margin:14px 0 0;font-size:.95rem}.pp-hero__links a{color:var(--pp-candle);text-underline-offset:3px}.pp-steps{background:var(--pp-panel);border:1px solid var(--pp-hair);border-radius:var(--pp-radius);gap:10px;margin:0;padding:18px 20px;list-style:none;display:grid}.pp-steps li{color:var(--pp-dim);align-items:center;gap:12px;line-height:1.4;display:flex}.pp-steps li strong{color:var(--pp-text)}.pp-steps span{background:var(--pp-ember);width:28px;height:28px;color:var(--sh-on-ember);border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:700;display:grid}.pp-notice{background:color-mix(in srgb, var(--sh-ember) 12%, transparent);border:1px solid var(--pp-hair);color:var(--pp-text);border-radius:12px;margin:0 0 20px;padding:12px 16px}.pp-join{margin-bottom:20px}.pp-workbench{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.pp-left{gap:12px;min-width:0;display:grid}.pp-stage{background:var(--sh-noir-2);border:1px solid var(--pp-hair);border-radius:22px;height:min(72vh,680px);min-height:460px;transition:box-shadow .4s;position:relative;overflow:hidden;box-shadow:0 30px 60px #00000073,inset 0 0 0 1px #f4ece308}.pp-stage.is-dark{box-shadow:0 30px 80px color-mix(in srgb, var(--sh-ember) 22%, transparent), 0 30px 60px #00000080}.pp-canvas-host{position:absolute;inset:0}.pp-canvas{touch-action:pan-y;cursor:crosshair;width:100%;height:100%;display:block}.pp-stage.is-spin .pp-canvas,.pp-stage.is-viewing .pp-canvas{cursor:grab}.pp-stage.is-spin .pp-canvas:active,.pp-stage.is-viewing .pp-canvas:active{cursor:grabbing}.pp-stage__hud{pointer-events:none;justify-content:space-between;gap:10px;display:flex;position:absolute;top:14px;left:14px;right:14px}.pp-stage__hud>*{pointer-events:auto}.pp-hud-right{gap:8px;display:flex}.pp-mode,.pp-sort{border:1px solid var(--pp-hair-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#100b09bd;border-radius:999px;padding:4px;display:inline-flex}.pp-mode button,.pp-sort button{min-height:40px;color:var(--pp-dim);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 18px;font-weight:600}.pp-mode button[aria-checked=true],.pp-sort button[aria-selected=true]{background:var(--pp-ember);color:var(--sh-on-ember)}.pp-lights,.pp-video{border:1px solid color-mix(in srgb, var(--sh-gilt) 55%, transparent);min-height:48px;color:var(--pp-candle);font:inherit;white-space:nowrap;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#100b09bd;border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-weight:700;display:inline-flex}.pp-lights[aria-pressed=true]{background:var(--pp-candle);color:var(--sh-on-ember);box-shadow:0 0 24px color-mix(in srgb, var(--sh-gilt) 55%, transparent)}.pp-video svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;width:20px;height:20px}.pp-video:disabled{opacity:.45;cursor:not-allowed}.pp-stage__hint{max-width:calc(100% - 28px);color:var(--pp-text);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#100b09bd;border-radius:999px;margin:0;padding:8px 16px;font-size:.95rem;position:absolute;bottom:84px;left:50%;overflow:hidden;transform:translate(-50%)}.pp-stage__hint[hidden]{display:none}.pp-dock{border:1px solid var(--pp-hair-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#100b09cc;border-radius:999px;align-items:center;gap:4px;padding:5px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000059}.pp-dock[hidden],.pp-stage.is-viewing .pp-dock{display:none}.pp-dock__btn{min-width:48px;min-height:48px;color:var(--pp-text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-weight:600;transition:background .14s,color .14s,opacity .14s;display:inline-flex}.pp-dock__btn svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.pp-dock__btn:hover:not(:disabled){background:#f4ece31a}.pp-dock__btn:active:not(:disabled){background:#f4ece32e}.pp-dock__btn:disabled{opacity:.38;cursor:default}.pp-dock__btn[aria-pressed=true]{background:var(--pp-ember);color:var(--sh-on-ember)}.pp-dock__sep{background:var(--pp-hair-soft);width:1px;height:26px;margin:0 4px}.pp-dock__label{white-space:nowrap}.pp-fallback{text-align:center;color:var(--pp-dim);place-items:center;padding:32px;display:grid;position:absolute;inset:0}.pp-fallback[hidden]{display:none}.pp-viewing{border-radius:var(--pp-radius);background:var(--pp-panel);border:1px solid var(--pp-hair);gap:12px;padding:14px 16px;display:grid}.pp-viewing__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pp-viewing__head p{min-width:0;color:var(--pp-dim);margin:0}.pp-viewing__head strong{color:var(--pp-text);font-family:var(--sh-font-display);font-size:1.5rem;font-weight:500}.pp-viewing__actions,.pp-viewing__share{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pp-btn{background:var(--pp-ember);min-height:44px;color:var(--sh-on-ember);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;text-decoration:none;transition:transform .12s,background .16s,border-color .16s;display:inline-flex}.pp-btn:hover:not(:disabled){background:var(--pp-ember-lit);transform:translateY(-1px)}.pp-btn--ghost{background:var(--pp-raised);border-color:var(--pp-hair-soft);color:var(--pp-text)}.pp-btn--ghost:hover:not(:disabled){background:var(--pp-raised);border-color:var(--pp-ember)}.pp-btn--big{width:100%;min-height:52px;font-size:1.05rem}.pp-btn:disabled{opacity:.45;cursor:not-allowed}.pp-btn--fb{color:#fff;background:#1460d6}.pp-btn--fb:hover:not(:disabled){color:#fff;background:#0f52bd}.pp-fb{fill:currentColor;flex:none;width:20px;height:20px}.pp-btn svg.pp-ico{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;flex:none;width:20px;height:20px}.pp-chip-new{background:var(--sh-on-ember);color:var(--pp-ember-lit);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-left:2px;padding:2px 8px;font-size:.68rem;font-weight:700}.pp-panel__title .pp-chip-new{background:var(--pp-ember);color:var(--sh-on-ember);vertical-align:1px;margin-left:8px}.pp-tools{gap:12px;min-width:0;display:grid}.pp-panel{border-radius:var(--pp-radius);background:var(--pp-panel);border:1px solid var(--pp-hair-soft);padding:16px;position:relative}.pp-panel__title{font-family:var(--sh-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pp-ember-lit);margin:0 0 12px;font-size:.78rem;font-weight:500}.pp-panel__sub{font-family:var(--sh-font-body);letter-spacing:0;text-transform:none;color:var(--pp-faint);margin-left:6px;font-size:.78rem}.pp-toolrow{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.pp-tool{border:1px solid var(--pp-hair-soft);background:var(--pp-raised);min-height:48px;color:var(--pp-text);font:inherit;cursor:pointer;border-radius:12px;font-weight:600}.pp-tool[aria-checked=true],.pp-stamp[aria-checked=true]{border-color:var(--pp-ember);background:color-mix(in srgb, var(--sh-ember) 20%, var(--sh-noir-2));box-shadow:inset 0 0 0 1px var(--pp-ember)}.pp-range{color:var(--pp-dim);grid-template-columns:auto 1fr;align-items:center;gap:12px;font-size:.92rem;display:grid}.pp-range input{width:100%;min-height:32px;accent-color:var(--pp-ember)}.pp-stamps{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:12px;display:grid}.pp-stamp{aspect-ratio:1;border:1px solid var(--pp-hair-soft);background:var(--pp-raised);color:var(--pp-ember-lit);cursor:pointer;border-radius:12px;place-items:center;padding:6px;display:grid;position:relative}.pp-stamp svg{fill:currentColor;width:100%;max-width:40px;height:auto}.pp-stamp:hover{border-color:var(--pp-ember)}.pp-stamp-opts{gap:10px;display:grid}.pp-check{min-height:32px;color:var(--pp-dim);cursor:pointer;align-items:center;gap:8px;font-size:.92rem;display:inline-flex}.pp-check input{width:18px;height:18px;accent-color:var(--pp-ember)}.pp-faces{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.pp-faces .pp-btn--surprise{grid-column:1/-1}.pp-save{border-color:var(--pp-hair);gap:10px;display:grid}.pp-field{color:var(--pp-dim);gap:4px;font-size:.9rem;display:grid}.pp-field input{border:1px solid var(--pp-hair-soft);background:var(--sh-noir);min-height:44px;color:var(--pp-text);font:inherit;border-radius:10px;padding:0 12px;font-size:1rem}.pp-field input::placeholder{color:var(--pp-faint)}.pp-field input:focus{border-color:var(--pp-ember)}.pp-by{color:var(--pp-dim);margin:0;font-size:.92rem}.pp-by strong{color:var(--pp-text)}.pp-hp{display:none!important}.pp-save__note{color:var(--pp-faint);margin:0;font-size:.82rem;line-height:1.45}.pp-save__status{min-height:1.3em;color:var(--pp-dim);margin:0;font-size:.95rem}.pp-save__status.is-ok{color:var(--pp-candle)}.pp-save__status.is-error{color:var(--pp-ember-lit)}.pp-photo{border-color:var(--pp-hair);background:radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--sh-ember) 18%, transparent), transparent 60%), var(--pp-panel)}.pp-photo__lede{color:var(--pp-dim);margin:0 0 12px;font-size:.95rem;line-height:1.45}.pp-photo__pick{width:100%}.pp-photo__privacy{color:var(--pp-faint);margin:10px 0 0;font-size:.82rem;line-height:1.4}.pp-photo__work[hidden],.pp-photo__intro[hidden]{display:none}.pp-photo__views{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.pp-photo__view{gap:6px;margin:0;display:grid}.pp-photo__view canvas{aspect-ratio:1;border:1px solid var(--pp-hair-soft);background:var(--pp-raised);border-radius:12px;width:100%;height:auto;display:block}#pp-photo-crop{cursor:grab;touch-action:none}#pp-photo-crop:active{cursor:grabbing}.pp-photo__view figcaption{color:var(--pp-faint);text-align:center;font-size:.78rem}.pp-photo__opts{gap:6px;display:grid}.pp-photo__opts .pp-range{grid-template-columns:52px 1fr}.pp-photo__tip{color:var(--pp-candle);margin:10px 0;font-size:.88rem}.pp-photo__actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.pp-photo__actions #pp-photo-carve{grid-column:1/-1;min-height:50px;font-size:1.05rem}.pp-photo__status{color:var(--pp-dim);margin:8px 0 0;font-size:.88rem}.pp-photo__status:empty{display:none}.pp-photo__status.is-error{color:var(--pp-ember-lit)}.is-photo .pp-tools>.pp-panel:not(.pp-photo):not(.pp-save){display:none}.pp-rec{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0706d6;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.pp-rec[hidden]{display:none}.pp-rec__card{border-radius:var(--pp-radius);background:var(--pp-panel-solid);border:1px solid var(--pp-hair);width:min(560px,100%);max-height:100%;box-shadow:0 30px 80px #0009, 0 0 60px color-mix(in srgb, var(--sh-ember) 14%, transparent);gap:14px;padding:20px;display:grid;overflow:auto}.pp-rec__title{font-family:var(--sh-font-display);color:var(--pp-candle);margin:0;font-size:1.6rem;font-weight:500}.pp-rec__frame{aspect-ratio:1;background:var(--sh-noir);border-radius:14px;width:min(100%,62vh);margin:0 auto;overflow:hidden}.pp-rec__frame>*{object-fit:cover;width:100%;height:100%;display:block}.pp-rec__progress{background:var(--pp-raised);border-radius:999px;height:6px;overflow:hidden}.pp-rec__progress span{background:linear-gradient(90deg, var(--pp-ember-deep), var(--pp-ember-lit), var(--pp-candle));transform-origin:0;height:100%;display:block;transform:scaleX(0)}.pp-rec.is-done .pp-rec__progress{display:none}.pp-rec__status{color:var(--pp-dim);text-align:center;margin:0}.pp-rec__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:none}.pp-rec.is-done .pp-rec__actions{display:flex}.pp-rec__actions [hidden]{display:none}.pp-gallery{margin-top:56px;scroll-margin-top:5rem}.pp-gallery__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px;display:flex}.pp-h2{font-family:var(--sh-font-display);color:var(--pp-text);margin:0;font-size:clamp(2rem,3.4vw,2.8rem);font-weight:500}.pp-gallery__count{color:var(--pp-faint);margin:4px 0 0}.pp-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.pp-card{border-radius:var(--pp-radius);background:var(--pp-panel-solid);border:1px solid var(--pp-hair-soft);align-content:start;min-width:0;transition:transform .16s,border-color .16s;display:grid;position:relative;overflow:hidden}.pp-card:hover{border-color:var(--pp-hair);transform:translateY(-2px)}.pp-card__open{background:var(--sh-noir);cursor:pointer;border:0;padding:0;display:block}.pp-card__open img{aspect-ratio:1;object-fit:cover;width:100%;height:auto;display:block}.pp-card__chip{border:1px solid color-mix(in srgb, var(--sh-gilt) 50%, transparent);color:var(--pp-candle);background:#100b09e0;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:600;position:absolute;top:8px;left:8px}.pp-card__meta{justify-content:space-between;align-items:center;gap:10px;padding:12px 12px 6px;display:flex}.pp-card__meta>div{min-width:0}.pp-card__title{text-overflow:ellipsis;white-space:nowrap;color:var(--pp-text);font-weight:700;display:block;overflow:hidden}.pp-card__by{text-overflow:ellipsis;white-space:nowrap;color:var(--pp-faint);margin:2px 0 0;font-size:.86rem;overflow:hidden}.pp-card__foot{justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding:0 12px 12px;display:flex}.pp-card__link{border:1px solid var(--pp-hair-soft);min-height:32px;color:var(--pp-dim);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0 12px;font-size:.85rem}.pp-card__link:hover{color:var(--pp-text);border-color:var(--pp-ember)}.pp-votes{background:var(--sh-noir);border:1px solid var(--pp-hair-soft);border-radius:999px;flex:none;align-items:center;gap:2px;padding:2px;display:inline-flex}.pp-vote-btn{width:40px;height:40px;color:var(--pp-faint);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:color .12s,background .12s,transform .12s;display:grid}.pp-vote-btn svg{fill:currentColor;width:20px;height:20px}.pp-vote-btn--down svg{transform:rotate(180deg)}.pp-vote-btn:hover{color:var(--pp-text);background:var(--pp-raised)}.pp-vote-btn:active{transform:scale(.9)}.pp-vote-btn--up[aria-pressed=true]{color:var(--pp-ember-lit)}.pp-vote-btn--down[aria-pressed=true]{color:var(--sh-wine-lit)}.pp-score{text-align:center;font-variant-numeric:tabular-nums;min-width:2ch;color:var(--pp-text);font-weight:700}.pp-empty{border-radius:var(--pp-radius);border:1px dashed var(--pp-hair);text-align:center;color:var(--pp-dim);margin:0;padding:40px}.pp-more{justify-content:center;margin-top:24px;display:flex}.pp-toast{z-index:70;background:var(--pp-panel-solid);border:1px solid var(--pp-hair);max-width:calc(100vw - 32px);color:var(--pp-text);opacity:0;pointer-events:none;border-radius:12px;margin:0;padding:12px 18px;transition:transform .22s,opacity .22s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,140%)}.pp-toast.is-on{opacity:1;transform:translate(-50%)}@media (min-width:1024px){.pp-left{top:calc(var(--sh-nav-h,64px) + 16px);position:sticky}.pp-stage{height:min(70vh,660px,100vh - 220px);min-height:420px}}@media (max-width:1180px){.pp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pp-workbench{grid-template-columns:minmax(0,1fr) 320px}}@media (max-width:1023px){.pp{padding:28px 16px 64px}.pp-hero{grid-template-columns:1fr;gap:20px}.pp-workbench{grid-template-columns:1fr}.pp-stage{border-radius:20px;height:min(72vh,560px);min-height:380px}.pp-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-save,.pp-photo{grid-column:1/-1}}@media (max-width:640px){.pp-steps{display:none}.pp-stage{height:64vh;min-height:340px}.pp-tools{grid-template-columns:1fr}.pp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pp-card__meta{flex-direction:column;align-items:stretch}.pp-votes{align-self:flex-start}.pp-mode button,.pp-lights{padding:0 14px}.pp-video{padding:0 13px}.pp-video__label{display:none}.pp-stage__hint{font-size:.85rem;bottom:78px}.pp-dock__label{display:none}.pp-dock__btn{padding:0 12px}.pp-viewing .pp-btn{padding:0 12px;font-size:.9rem}.pp-stamps{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}}@media (prefers-reduced-motion:reduce){.pp-card,.pp-btn,.pp-vote-btn,.pp-toast,.pp-stage,.pp-dock__btn{transition:none}.pp-btn:hover:not(:disabled),.pp-card:hover{transform:none}}.pp--top{padding-bottom:0}.pp--body{padding-top:0;padding-bottom:40px}.pp--faq{padding-top:0;padding-bottom:80px}.pp--faq .sh-faq{max-width:860px}
