@keyframes ph-fade-in{0%{opacity:0}to{opacity:1}}.ph-card{background:var(--color-base-100);border:1px solid var(--color-base-300);--ph-panel-max:21rem;border-radius:1.25rem;position:relative;overflow:hidden;box-shadow:0 20px 50px -12px #00000040;container-type:inline-size}@media (width>=640px){.ph-card{--ph-panel-max:24rem}}.ph-form{flex-direction:column;gap:.75rem;padding:1rem;display:flex}@media (width>=640px){.ph-form{padding:1.25rem}}.ph-card .ph-prompt{flex-direction:column;width:100%;height:auto;min-height:7rem;padding:0;display:flex}.ph-card .ph-prompt:focus-within{outline:2px solid color-mix(in srgb, var(--color-primary) 60%, transparent);outline-offset:2px}.ph-card .ph-prompt textarea{resize:none;width:100%;font:inherit;color:inherit;background:0 0;border:0;outline:none;flex:1;padding:.875rem 1rem .5rem;font-size:1rem;line-height:1.6}.ph-prompt-tools{justify-content:space-between;align-items:center;gap:.5rem;padding:0 .5rem .5rem;display:flex}.ph-counter{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--color-base-content) 50%, transparent);padding-inline-end:.5rem;font-size:.6875rem}.ph-error{color:var(--color-error);margin:-.25rem 0 0;font-size:.75rem}.ph-tray{background:var(--color-base-200);border-radius:1rem;gap:.25rem;padding:.25rem;display:flex}.ph-card .ph-tray-btn{flex:1;justify-content:space-between;gap:.5rem;min-width:0;height:3.25rem;padding:0 .75rem;font-weight:400}.ph-card .ph-tray-btn-open{background:var(--color-base-100)}.ph-tray-sep{background:color-mix(in srgb, var(--color-base-content) 10%, transparent);flex-shrink:0;width:1px;margin:.5rem 0}.ph-tray-lead{width:2.25rem;height:2.25rem;color:color-mix(in srgb, var(--color-base-content) 55%, transparent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ph-tray-thumb{object-fit:cover;border-radius:.5rem;width:2.25rem;height:2.25rem}.ph-tray-text{text-align:start;flex-direction:column;flex:1;align-items:flex-start;gap:.125rem;min-width:0;display:flex}.ph-tray-label{opacity:.6;max-width:100%;font-size:.75rem;line-height:1}.ph-tray-value{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.875rem;font-weight:500;line-height:1.2;overflow:hidden}.ph-tray-caret{opacity:.4;flex-shrink:0;transition:transform .2s}.ph-tray-caret-open{transform:rotate(180deg)}.ph-pickers{position:relative}@keyframes ph-pop-in{0%{opacity:0;transform:translateY(.25rem)}to{opacity:1;transform:translateY(0)}}.ph-panel{inset-inline:0;z-index:30;max-height:var(--ph-panel-max);border:1px solid var(--color-base-300);background:var(--color-base-100);border-radius:1rem;gap:.5rem;padding:.75rem;animation:.15s ph-pop-in;display:grid;position:absolute;bottom:calc(100% + .375rem);overflow-y:auto;box-shadow:0 18px 40px -12px #0000004d}.ph-panel-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.ph-panel-chips{grid-template-columns:repeat(5,minmax(0,1fr))}.ph-option{border:1px solid var(--color-base-300);background:var(--color-base-100);color:inherit;font:inherit;cursor:pointer;border-radius:.75rem;flex-direction:column;align-items:center;gap:.375rem;padding:.5rem;transition:border-color .15s,box-shadow .15s,background .15s;display:flex;position:relative}.ph-option:hover{border-color:color-mix(in srgb, var(--color-primary) 50%, transparent)}.ph-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ph-option-selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.ph-option-card{padding:0;overflow:hidden}.ph-option-img{aspect-ratio:3/2;object-fit:cover;background:var(--color-base-200);width:100%;display:block}.ph-option-card .ph-option-label{padding:.375rem .5rem .5rem;font-size:.75rem;font-weight:600;line-height:1.2}.ph-option-chip{justify-content:center;min-height:4.5rem}.ph-panel-note{grid-column:span var(--ph-note-span,3);border:1px dashed color-mix(in srgb, var(--color-primary) 40%, var(--color-base-300));background:color-mix(in srgb, var(--color-primary) 4%, transparent);min-width:0;color:color-mix(in srgb, var(--color-base-content) 72%, transparent);text-wrap:balance;border-radius:.75rem;align-items:center;gap:.5rem;margin:0;padding:.5rem .75rem;font-size:.75rem;font-weight:500;line-height:1.35;display:flex}.ph-panel-note svg{color:var(--color-primary);flex:none}.ph-option-chip .ph-option-label{font-variant-numeric:tabular-nums;font-size:.75rem}.ph-option-glyph{height:1.5rem;color:color-mix(in srgb, var(--color-base-content) 70%, transparent);justify-content:center;align-items:center;display:flex}.ph-option-selected .ph-option-glyph{color:var(--color-primary)}.ph-option-check{top:.375rem;background:var(--color-primary);width:1.25rem;height:1.25rem;color:var(--color-primary-content);border-radius:9999px;place-items:center;display:grid;position:absolute;inset-inline-end:.375rem}.ph-card .ph-cta{gap:.5rem;width:100%;height:3rem}.ph-note{text-align:center;color:color-mix(in srgb, var(--color-base-content) 60%, transparent);justify-content:center;align-items:center;gap:.375rem;margin:0;font-size:.75rem;line-height:1.4;display:flex}.ph-note svg{color:var(--color-primary);flex-shrink:0}.ph-card:has(>.ph-ready)>:not(.ph-ready){display:none}.ph-ready{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:3.25rem 1.25rem 1.25rem;animation:.2s ph-fade-in;display:flex;position:relative}.ph-ready-icon{width:3rem;height:3rem;color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 14%, transparent);border-radius:9999px;place-items:center;display:grid}.ph-ready-title{color:var(--color-base-content);text-wrap:balance;margin:0;font-size:1.125rem;font-weight:700;line-height:1.3}.ph-ready-title:focus{outline:none}.ph-summary{text-align:start;border:1px solid var(--color-base-300);background:var(--color-base-200);border-radius:.75rem;width:100%;max-width:26rem;padding:.75rem 1rem}.ph-summary-label{opacity:.6;font-size:.6875rem;font-weight:600;display:block}.ph-summary-prompt{color:var(--color-base-content);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:.25rem 0 0;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.ph-summary-params{color:var(--color-primary);margin:.375rem 0 0;font-size:.75rem;font-weight:600}.ph-ready-text{max-width:26rem;color:color-mix(in srgb, var(--color-base-content) 75%, transparent);margin:0;font-size:.875rem;line-height:1.5}.ph-ready-actions{flex-direction:column;gap:.5rem;width:100%;max-width:26rem;display:flex}.ph-card .ph-ready-cta{white-space:normal;gap:.625rem;width:100%;height:auto;min-height:2.75rem;padding-block:.5rem}.ph-card .ph-ready-email{font-weight:500}.ph-ready-login{color:color-mix(in srgb, var(--color-base-content) 70%, transparent);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--color-base-content) 25%, transparent);text-underline-offset:3px;border-radius:.25rem;align-items:center;gap:.375rem;padding:.125rem .25rem;font-size:.8125rem;font-weight:500;display:inline-flex}.ph-ready-login:hover{color:var(--color-base-content);text-decoration-color:currentColor}.ph-ready-login:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ph-ready-note{color:color-mix(in srgb, var(--color-base-content) 55%, transparent);align-items:center;gap:.375rem;margin:0;font-size:.75rem;display:flex}.ph-card .ph-ready-back{top:.75rem;color:color-mix(in srgb, var(--color-base-content) 60%, transparent);gap:.375rem;font-weight:500;position:absolute;inset-inline-start:.75rem}.ph-card .ph-ready-back:hover{color:var(--color-base-content)}.ph-upload{border:1.5px dashed color-mix(in srgb, var(--color-base-content) 20%, transparent);background:var(--color-base-200);border-radius:1rem;flex-direction:column;gap:.5rem;padding:.75rem;transition:border-color .15s,background .15s;display:flex}.ph-upload-drag{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.ph-upload-head{justify-content:space-between;align-items:baseline;gap:.5rem;min-height:1.25rem;display:flex}.ph-upload-title{font-size:.8125rem;font-weight:600}.ph-upload-meta{color:color-mix(in srgb, var(--color-base-content) 55%, transparent);white-space:nowrap;font-size:.6875rem}.ph-upload-row{flex-wrap:wrap;align-items:stretch;gap:.5rem;display:flex}.ph-upload-thumb{background:var(--color-base-100);border-radius:.75rem;flex-shrink:0;width:5rem;height:5rem;position:relative;overflow:hidden}.ph-upload-thumb img{object-fit:cover;width:100%;height:100%;display:block}.ph-upload-thumb-uploading img{opacity:.6}.ph-upload-thumb-error{box-shadow:0 0 0 2px var(--color-error)}.ph-upload-progress{inset-inline:.375rem;background:color-mix(in srgb, var(--color-base-100) 70%, transparent);border-radius:9999px;height:.25rem;position:absolute;bottom:.375rem;overflow:hidden}.ph-upload-progress-bar{background:var(--color-primary);height:100%;transition:width .2s;display:block}.ph-upload-flag{bottom:.25rem;background:var(--color-error);width:1.5rem;height:1.5rem;color:var(--color-error-content);border-radius:9999px;place-items:center;display:grid;position:absolute;inset-inline-start:.25rem}.ph-upload-remove{top:.25rem;color:#f8fafc;cursor:pointer;background:#0f172aa6;border:0;border-radius:9999px;place-items:center;width:1.5rem;height:1.5rem;display:grid;position:absolute;inset-inline-end:.25rem}.ph-upload-remove:hover{background:#0f172ad9}.ph-upload-add{min-height:5rem;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;border-radius:.75rem;flex:1;align-items:center;gap:.75rem;padding:.5rem .75rem;transition:background .15s;display:flex}.ph-upload-add:hover{background:color-mix(in srgb, var(--color-base-100) 70%, transparent)}.ph-upload-add:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ph-upload-add-compact{border:1.5px dashed color-mix(in srgb, var(--color-base-content) 20%, transparent);flex:0 0 5rem;justify-content:center;padding:0}.ph-upload-add-icon{background:var(--color-base-100);width:2.5rem;height:2.5rem;color:var(--color-primary);border-radius:9999px;flex-shrink:0;place-items:center;display:grid}.ph-upload-add-text{flex-direction:column;gap:.125rem;min-width:0;display:flex}.ph-upload-hint{font-size:.8125rem;font-weight:500;line-height:1.3}.ph-upload-formats{color:color-mix(in srgb, var(--color-base-content) 55%, transparent);font-size:.6875rem}.ph-summary-thumbs{gap:.375rem;margin:.375rem 0 0;display:flex}.ph-summary-thumbs img{object-fit:cover;border-radius:.5rem;width:3rem;height:3rem}@media (prefers-reduced-motion:reduce){.ph-panel,.ph-ready,.ph-tray-caret,.ph-pickers{transition:none;animation:none}}@container (width<=26rem){.ph-tray:has(.ph-tray-sep) .ph-tray-value{display:none}.ph-tray-label{opacity:1;font-size:.875rem}.ph-card .ph-tray-btn{gap:.375rem;padding:0 .5rem}.ph-tray-lead,.ph-tray-thumb{width:1.75rem;height:1.75rem}.ph-tray:has(.ph-tray-sep) .ph-tray-label{overflow-wrap:anywhere;hyphens:auto;line-height:1.15}.ph-panel-chips{grid-template-columns:repeat(3,minmax(0,1fr))}.ph-panel-chips .ph-panel-note{text-align:center;overflow-wrap:anywhere;hyphens:auto;flex-direction:column;grid-column:span 1;justify-content:center;gap:.25rem;padding:.5rem .375rem;font-size:.6875rem;line-height:1.25}}@container (width<=21rem){.ph-tray:has(.ph-tray-sep) .ph-tray-caret{display:none}}.ph-ops{border:0;min-width:0;margin:0;padding:0}.ph-ops-label{margin-bottom:.5rem;padding:0;font-size:.8125rem;font-weight:600}.ph-ops-list{flex-wrap:wrap;gap:.375rem;display:flex}.ph-op{border:1px solid var(--color-base-300);background:var(--color-base-100);color:color-mix(in srgb, var(--color-base-content) 75%, transparent);cursor:pointer;border-radius:9999px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;line-height:1.4;transition:border-color .15s,color .15s,background-color .15s}.ph-op:hover{border-color:var(--color-primary);color:var(--color-primary)}.ph-op:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ph-op-active,.ph-op-active:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-content)}@media (prefers-reduced-motion:reduce){.ph-op{transition:none}}.ph-edit{scroll-margin-top:5.5rem}.ph-edit-flash .ph-card{animation:1.6s ease-out ph-edit-flash}@keyframes ph-edit-flash{0%,35%{box-shadow:0 0 0 4px color-mix(in oklab, var(--color-primary) 55%, transparent), var(--gg-shadow-panel)}to{box-shadow:0 0 0 4px transparent, var(--gg-shadow-panel)}}@media (prefers-reduced-motion:reduce){.ph-edit-flash .ph-card{outline:3px solid color-mix(in oklab, var(--color-primary) 55%, transparent);outline-offset:2px;animation:none}}.ph-modes{border-bottom:1px solid var(--color-base-300);grid-template-columns:1fr 1fr;display:grid}.ph-mode{text-align:center;color:color-mix(in srgb, var(--color-base-content) 60%, transparent);background:color-mix(in srgb, var(--color-base-200) 60%, transparent);justify-content:center;align-items:center;gap:.5rem;padding:.875rem .75rem;font-size:.9375rem;font-weight:600;line-height:1.3;text-decoration:none;transition:color .15s,background-color .15s;display:flex}.ph-mode+.ph-mode{border-left:1px solid var(--color-base-300)}a.ph-mode:hover{color:var(--color-primary);background:var(--gg-accent-soft)}a.ph-mode:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.ph-mode-active{color:var(--color-base-content);box-shadow:inset 0 -2px 0 var(--color-primary);background:0 0}.ph-mode-active svg{color:var(--color-primary)}@media (prefers-reduced-motion:reduce){.ph-mode{transition:none}}
