@font-face{font-family:Gloock;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/gloock-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Gloock;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/gloock-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/hanken-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/hanken-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.guest{--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-drawer:cubic-bezier(0.32,0.72,0,1);--display:"Gloock",Georgia,serif;--sans:"Hanken Grotesk",system-ui,-apple-system,sans-serif;position:relative;min-height:100vh;min-height:100dvh;display:flex;justify-content:center;align-items:flex-start;padding:0 20px 96px;background:var(--bg);color:var(--text-secondary);font-family:var(--sans);-webkit-tap-highlight-color:transparent}.guest *,.guest :after,.guest :before{box-sizing:border-box}.guest :focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px;border-radius:4px}.guest button,.guest input{font-family:var(--sans)}.guest h1,.guest h2,.guest h3,.guest p{margin:0}.guest .g-backdrop{position:fixed;inset:0;z-index:0;background-size:cover;background-position:50%}.guest .g-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--veil-top) 0,var(--veil-mid) 42%,var(--veil-bottom) 100%)}.guest[data-image=true] .back-link,.guest[data-image=true] .g-subtitle,.guest[data-image=true] .g-title,.guest[data-image=true] .g-wordmark,.guest[data-image=true] .notice-text,.guest[data-image=true] .notice-title,.guest[data-image=true] .shape-hint,.guest[data-image=true] .step-label{text-shadow:0 1px 22px var(--text-halo)}.guest[data-image=true][data-veil=brak] :is(.g-title,.g-subtitle,.g-wordmark,.step-label,.back-link,.shape-hint,.notice-title,.notice-text),.guest[data-image=true][data-veil=lekka] :is(.g-title,.g-subtitle,.g-wordmark,.step-label,.back-link,.shape-hint,.notice-title,.notice-text){text-shadow:0 1px 8px var(--text-halo),0 1px 24px var(--text-halo)}.guest[data-image=true][data-veil=brak] :is(.g-subtitle,.step-label,.shape-hint,.back-link){color:var(--text-secondary)}.guest[data-image=true][data-veil=brak] .g-logo{filter:drop-shadow(0 2px 14px var(--text-halo))}.guest[data-image=true] .g-surface-blur{backdrop-filter:blur(12px)}.guest .g-container{position:relative;z-index:1;width:100%;max-width:480px}.guest .g-skip{position:absolute;top:-100px;left:16px;z-index:9999;padding:10px 18px;border-radius:0 0 10px 10px;background:var(--accent);color:var(--on-accent);font-size:14px;font-weight:600;text-decoration:none;transition:top .2s}.guest .g-skip:focus-visible{top:0;outline:none}.guest .g-preview-flag{top:14px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);color:var(--text-muted);font-size:12px;font-weight:600}.guest .g-preview-flag,.guest .g-preview-note{position:fixed;left:14px;z-index:60;background:var(--surface-solid)}.guest .g-preview-note{top:52px;right:14px;max-width:452px;margin:0 auto;padding:10px 14px;border-radius:12px;border:1px solid var(--error-border);color:var(--text-primary);font-size:13px;line-height:1.45}.guest .lang-switch{position:fixed;top:14px;right:14px;z-index:60;display:inline-flex;align-items:center;padding:3px;border-radius:999px;background:var(--surface);border:1px solid var(--border);backdrop-filter:blur(8px);transition:transform .15s var(--ease-out)}.guest .lang-switch:active{transform:scale(.96)}.guest .lang-switch button{position:relative;z-index:1;border:none;background:transparent;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--text-muted);padding:5px 11px;border-radius:999px;transition:color .2s ease}.guest .lang-switch button.active{color:var(--on-accent)}.guest .lang-thumb{position:absolute;top:3px;left:3px;z-index:0;height:calc(100% - 6px);border-radius:999px;background:var(--accent);box-shadow:0 2px 12px var(--accent-glow);transition:transform .28s var(--ease-out),width .28s var(--ease-out)}.guest .g-header{padding:52px 0 0;text-align:center;opacity:0;transform:translateY(16px);animation:g-rise .8s var(--ease-out) .05s forwards}.guest .g-logo{display:block;margin:0 auto 30px;width:auto;max-width:min(76%,300px);max-height:140px;-o-object-fit:contain;object-fit:contain}.guest .g-wordmark{margin-bottom:28px;color:var(--text-primary);font-size:19px;font-weight:600;letter-spacing:.01em;text-wrap:balance}.guest .g-rule{width:32px;height:1px;margin:0 auto 22px;background:var(--accent-ink);opacity:.6}.guest .g-title{margin-bottom:14px;color:var(--text-primary);font-family:var(--display);font-size:clamp(44px,12vw,62px);font-weight:400;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}.guest .g-title[data-long=true]{font-size:clamp(34px,9vw,48px)}.guest .g-subtitle{color:var(--text-muted);font-size:12px;font-weight:400;letter-spacing:.15em;text-transform:uppercase}.guest .g-private{display:inline-flex;align-items:center;gap:7px;margin-top:16px;padding:7px 14px 7px 12px;border-radius:999px;border:1px solid var(--accent-border);background:var(--surface);color:var(--accent-ink);font-size:12px;font-weight:600;letter-spacing:.02em}.guest .g-actions{display:flex;flex-direction:column;gap:10px;margin:44px 0 0;opacity:0;transform:translateY(14px);animation:g-rise .8s var(--ease-out) .22s forwards}.guest .g-hidden-input{display:none}.guest .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.guest .upload-btn{display:flex;align-items:center;gap:12px;width:100%;height:60px;padding:0 22px;border:none;border-radius:14px;background:var(--accent);color:var(--on-accent);font-size:15px;font-weight:600;text-align:left;cursor:pointer;box-shadow:0 4px 20px var(--accent-glow);transition:background .2s,box-shadow .2s,transform .15s var(--ease-out)}.guest .upload-btn svg{flex-shrink:0;opacity:.7}.guest .upload-btn:active{transform:scale(.97)}.guest .upload-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}@media (hover:hover) and (pointer:fine){.guest .upload-btn:not(:disabled):hover{background:var(--accent-hover);box-shadow:0 8px 28px var(--accent-glow-strong);transform:translateY(-1px)}}.guest .upload-btn.secondary{justify-content:center;background:var(--surface);color:var(--text-primary);border:1px solid var(--border);box-shadow:none}@media (hover:hover) and (pointer:fine){.guest .upload-btn.secondary:not(:disabled):hover{background:var(--surface-raised);border-color:var(--accent-border);box-shadow:none}}.guest .gallery-row{display:flex;align-items:stretch;gap:10px}.guest .gallery-row .upload-btn{flex:1}.guest .photo-counter{display:flex;flex-shrink:0;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:64px;padding:10px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}.guest .counter-number{color:var(--accent-ink);font-family:var(--display);font-size:20px;line-height:1;font-variant-numeric:tabular-nums}.guest .counter-number.at-max{color:var(--success);animation:g-counter-pop .5s var(--ease-out) both}.guest .counter-label{color:var(--text-muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.guest .ai-btn{display:flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 24px;border-radius:14px;border:1px solid var(--accent-border);background:var(--surface);color:var(--accent-ink);font-size:14px;font-weight:600;letter-spacing:.03em;cursor:pointer;transition:background .2s,border-color .2s,transform .15s var(--ease-out),box-shadow .2s}.guest .ai-btn:active{transform:scale(.97)}.guest .ai-btn:disabled{opacity:.45;cursor:not-allowed}@media (hover:hover) and (pointer:fine){.guest .ai-btn:not(:disabled):hover{background:var(--surface-raised);border-color:var(--accent-ink);transform:translateY(-1px);box-shadow:0 6px 22px var(--accent-glow)}}.guest .instagram-btn{display:flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:14px;background:linear-gradient(135deg,#f09433,#e6683c 20%,#dc2743 40%,#cc2366 65%,#bc1888);color:#fffdfb;font-size:13px;font-weight:500;letter-spacing:.05em;text-decoration:none;box-shadow:0 4px 18px rgba(204,35,102,.3);transition:opacity .2s,transform .15s var(--ease-out),box-shadow .2s}.guest .instagram-btn:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.guest .instagram-btn:hover{opacity:.88;transform:translateY(-1px);box-shadow:0 8px 24px rgba(204,35,102,.42)}}.guest .preview-container{margin:28px 0 0;animation:g-rise-from .5s var(--ease-out) both}.guest .summary-section{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding:16px 20px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}.guest .summary-label{color:var(--text-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.guest .summary-text{color:var(--text-primary);font-family:var(--display);font-size:26px;line-height:1;font-variant-numeric:tabular-nums}.guest .photo-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.guest .photo-item{position:relative;display:flex;align-items:center;gap:14px;padding:14px;border-radius:14px;background:var(--surface-raised);border:1px solid var(--border);animation:g-item-in .45s var(--ease-out) both}.guest .photo-item.removing{pointer-events:none;animation:g-item-out .28s var(--ease-out) forwards}.guest .photo-thumbnail{width:72px;height:72px;flex-shrink:0;border-radius:8px;-o-object-fit:cover;object-fit:cover;background:var(--surface)}.guest .photo-details{flex:1;min-width:0;padding-right:44px}.guest .photo-name{margin-bottom:10px;overflow:hidden;color:var(--text-primary);font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.guest .copies-control{display:flex;align-items:center;gap:10px}.guest .copies-label{color:var(--text-secondary);font-size:12px;letter-spacing:.04em}.guest .copies-input{width:64px;height:44px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text-primary);font-size:16px;text-align:center;transition:border-color .2s,background .2s}.guest .copies-input:focus{outline:none;border-color:var(--accent-ink)}.guest .copies-max{color:var(--text-muted);font-size:12px}.guest .remove-btn{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:20px;line-height:1;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .15s var(--ease-out)}.guest .remove-btn:active{transform:scale(.9)}@media (hover:hover) and (pointer:fine){.guest .remove-btn:hover{color:var(--error);background:var(--error-bg);border-color:var(--error-border);transform:scale(1.08)}}.guest .send-btn{position:relative;width:100%;height:64px;padding:0 24px;overflow:hidden;border:none;border-radius:14px;background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:600;letter-spacing:.05em;cursor:pointer;box-shadow:0 8px 32px var(--accent-glow);transition:background .2s,box-shadow .2s,transform .15s var(--ease-out)}.guest .send-btn:active{transform:scale(.98)}.guest .send-btn:disabled{background:var(--surface-raised);color:var(--text-muted);box-shadow:none;cursor:not-allowed;transform:none}.guest .send-btn:after{content:"";position:absolute;inset:0;background:linear-gradient(108deg,transparent 28%,rgba(255,255,255,.3) 50%,transparent 72%);transform:translateX(-200%);pointer-events:none}@media (hover:hover) and (pointer:fine){.guest .send-btn:not(:disabled):hover{background:var(--accent-hover);box-shadow:0 12px 40px var(--accent-glow-strong);transform:translateY(-2px)}.guest .send-btn:not(:disabled):hover:after{animation:g-shimmer .7s ease-out}}.guest .loading{padding:36px 0;text-align:center}.guest .spinner{width:34px;height:34px;margin:0 auto 14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:g-spin .85s linear infinite}.guest .loading p{color:var(--text-secondary);font-size:13px;letter-spacing:.08em}.guest .message{position:relative;margin-top:16px;padding:18px 20px;border-radius:14px;font-size:14px;line-height:1.5;text-align:center}.guest .message.error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error)}.guest .message.info{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary)}.guest .g-container.dimmed .g-actions,.guest .g-container.dimmed .g-header,.guest .g-container.dimmed .message,.guest .g-container.dimmed .preview-container{opacity:.28;filter:grayscale(.4);pointer-events:none;transition:opacity .35s ease,filter .35s ease}.guest .state-overlay{position:absolute;top:140px;left:50%;z-index:10;width:calc(100% - 20px);max-width:380px;padding:32px 28px 28px;border-radius:20px;border:1px solid var(--accent-border);background:var(--surface-solid);box-shadow:0 8px 40px var(--accent-glow);text-align:center;opacity:0;visibility:hidden;transform:translateX(-50%) translateY(-8px);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out),visibility 0s linear .4s}.guest .state-overlay.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out),visibility 0s linear 0s}.guest .state-overlay .g-rule{margin:12px auto 16px;opacity:.55}.guest .cooldown-eyebrow{display:block;color:var(--accent-ink);font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.85}.guest .cooldown-digits{color:var(--text-primary);font-family:var(--display);font-size:clamp(52px,14vw,76px);font-weight:400;line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums;animation:g-cooldown-pulse 2.4s ease-in-out infinite}.guest .state-hint{margin-top:12px;color:var(--text-secondary);font-size:13px;line-height:1.55}.guest .success-title{color:var(--text-primary);font-family:var(--display);font-size:clamp(32px,8vw,44px);font-weight:400;line-height:1.08;letter-spacing:-.015em}.guest .success-check{display:block;margin:0 auto 4px}.guest .state-overlay.show .check-circle{stroke-dasharray:220;stroke-dashoffset:220;transform-origin:40px 40px;transform:rotate(-90deg);animation:g-draw .6s var(--ease-out) .15s forwards}.guest .state-overlay.show .check-mark{stroke-dasharray:48;stroke-dashoffset:48;animation:g-draw .38s var(--ease-out) .65s forwards}.guest .particle{position:absolute;border-radius:50%;pointer-events:none;animation:g-particle var(--dur) cubic-bezier(.25,.46,.45,.94) var(--delay) both}.guest .sheet-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;background:var(--scrim);backdrop-filter:blur(8px);animation:g-fade .3s ease both}.guest .sheet-panel{display:flex;flex-direction:column;width:100%;max-width:480px;max-height:90vh;max-height:90dvh;overflow:hidden;border:1px solid var(--border);border-bottom:none;border-radius:22px 22px 0 0;background:var(--surface-solid);animation:g-sheet-up .5s var(--ease-drawer) both}.guest .sheet-handle{flex-shrink:0;width:36px;height:4px;margin:12px auto 0;border-radius:999px;background:var(--border)}.guest .sheet-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:18px 26px 6px}.guest .sheet-body h3{margin-bottom:12px;color:var(--text-primary);font-family:var(--display);font-size:22px;font-weight:400}.guest .sheet-body p{margin-bottom:12px;color:var(--text-secondary);font-size:14px;line-height:1.65}.guest .sheet-body a{color:var(--accent-ink);font-weight:500}.guest .sheet-footer{flex-shrink:0;padding:12px 26px calc(env(safe-area-inset-bottom, 0px) + 22px)}.guest .sheet-error{margin-bottom:12px;padding:10px 14px;border-radius:8px;background:var(--error-bg);color:var(--error);font-size:13px;line-height:1.5}.guest .sheet-buttons{display:flex;gap:10px}.guest .sheet-btn{flex:1;height:50px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,transform .15s var(--ease-out)}.guest .sheet-btn:active{transform:scale(.97)}.guest .sheet-btn.decline{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.guest .sheet-btn.accept{border:none;background:var(--accent);color:var(--on-accent)}@media (min-width:560px){.guest .sheet-overlay{align-items:center;padding:24px}.guest .sheet-panel{border-bottom:1px solid var(--border);border-radius:20px;animation-name:g-modal-in;animation-duration:.28s}.guest .sheet-handle{display:none}}.guest .privacy-footer{position:fixed;bottom:12px;left:50%;z-index:50;transform:translateX(-50%);white-space:nowrap;animation:g-fade .3s ease both}.guest .privacy-footer a{display:inline-block;padding:10px 16px;border-radius:20px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:11px;letter-spacing:.07em;text-decoration:none;transition:color .2s}.guest .privacy-footer a:hover{color:var(--text-secondary)}.guest .back-link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;padding:6px 4px;border:none;background:none;color:var(--text-muted);font-size:13px;cursor:pointer;transition:color .2s}.guest .back-link:hover{color:var(--accent-ink)}.guest .step{margin-top:40px;opacity:0;transform:translateY(14px);animation:g-rise .8s var(--ease-out) .2s forwards}.guest .step-label{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:var(--text-muted);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.guest .step-num{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--accent-border);color:var(--accent-ink);font-size:11px}.guest .style-section{position:relative}.guest .style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.guest .style-card{position:relative;aspect-ratio:3/4;overflow:hidden;padding:0;border-radius:12px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:transform .15s var(--ease-out),border-color .2s,box-shadow .2s}.guest .style-card img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.guest .style-card .style-name{position:absolute;right:0;bottom:0;left:0;padding:14px 8px 7px;background:linear-gradient(0deg,rgba(8,6,4,.92),transparent);color:#fbf8f4;font-size:11px;font-weight:600;text-align:center}.guest .style-card:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.guest .style-card:hover{transform:translateY(-2px);border-color:var(--accent-border)}}.guest .style-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 6px 22px var(--accent-glow)}.guest .style-check{position:absolute;top:7px;right:7px;display:none;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--accent);color:var(--on-accent)}.guest .style-card.selected .style-check{display:flex}.guest .selected-style-bar{display:flex;align-items:center;gap:14px;padding:10px 12px 10px 10px;border-radius:14px;border:1px solid var(--accent-border);background:var(--surface)}.guest .ss-thumb{flex-shrink:0;width:50px;height:50px;border-radius:10px;border:1px solid var(--accent-border);-o-object-fit:cover;object-fit:cover}.guest .ss-info{flex:1;min-width:0}.guest .ss-eyebrow{margin-bottom:2px;color:var(--text-muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.guest .ss-name{overflow:hidden;color:var(--text-primary);font-family:var(--display);font-size:18px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.guest .ss-change{display:inline-flex;flex-shrink:0;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--accent-ink);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s,transform .15s var(--ease-out)}.guest .ss-change:active{transform:scale(.97)}.guest .photo-row{display:flex;gap:10px}.guest .photo-row .upload-btn{flex:1;justify-content:center}.guest .ai-stage{margin-top:16px;animation:g-rise-from .5s var(--ease-out) both}.guest .ai-frame{position:relative;width:100%;overflow:hidden;border-radius:16px;border:1px solid var(--border);background:var(--bg);transition:border-color .4s,box-shadow .4s}.guest .ai-frame .stage-img{display:block;width:100%;max-height:62vh;-o-object-fit:contain;object-fit:contain;animation:g-image-in .35s var(--ease-out) both}.guest .ai-frame.revealed .stage-img{animation:g-dissolve .45s ease .78s forwards}.guest .ai-frame .result-img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;opacity:0;clip-path:inset(0 0 100% 0)}.guest .ai-frame.revealed{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 12px 44px var(--accent-glow)}.guest .ai-frame.revealed .result-img{opacity:1;animation:g-ai-reveal 1s var(--ease-out) forwards}.guest .ai-frame.generating{border-color:var(--accent-border);box-shadow:0 0 0 1px var(--accent-border),0 8px 34px var(--accent-glow)}.guest .ai-frame.generating .stage-img{animation:g-gen-pulse 2.4s ease-in-out infinite}.guest .gen-overlay{position:absolute;inset:0;display:none;pointer-events:none}.guest .ai-frame.generating .gen-overlay{display:block}.guest .gen-overlay:before{content:"";position:absolute;inset:0;background:rgba(10,8,6,.32)}.guest .scan-line{position:absolute;right:0;left:0;height:3px;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 18px 5px var(--accent-glow);animation:g-scan 1.9s ease-in-out infinite}.guest .gen-shimmer{position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,var(--accent-glow) 50%,transparent 68%);background-size:260% 100%;mix-blend-mode:screen;animation:g-shimmer-sweep 1.7s linear infinite}.guest .spark{position:absolute;color:var(--accent);font-size:18px;opacity:0;text-shadow:0 0 10px var(--accent-glow);animation:g-spark 1.9s ease-in-out infinite}.guest .spark:first-of-type{left:18%;top:26%;animation-delay:.1s}.guest .spark:nth-of-type(2){left:72%;top:20%;animation-delay:.55s}.guest .spark:nth-of-type(3){left:42%;top:58%;animation-delay:.95s}.guest .spark:nth-of-type(4){left:82%;top:64%;animation-delay:1.3s}.guest .spark:nth-of-type(5){left:26%;top:78%;animation-delay:1.6s}.guest .gen-label{position:absolute;right:0;bottom:0;left:0;padding:30px 14px 16px;background:linear-gradient(0deg,rgba(8,6,4,.88),transparent);color:#fbf8f4;font-size:13px;font-weight:600;letter-spacing:.04em;text-align:center}.guest .gen-label .dot{animation:g-blink 1.4s infinite both}.guest .gen-label .dot:nth-child(2){animation-delay:.2s}.guest .gen-label .dot:nth-child(3){animation-delay:.4s}.guest .result-actions{margin-top:14px;animation:g-rise-from .5s var(--ease-out) both}.guest .copies-row{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}.guest .stepper{display:flex;align-items:center;gap:14px}.guest .stepper button{width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-primary);font-size:20px;line-height:1;cursor:pointer;transition:border-color .2s,transform .12s var(--ease-out)}.guest .stepper button:active{transform:scale(.92)}.guest .stepper button:disabled{opacity:.35;cursor:not-allowed}.guest .stepper .count{min-width:32px;color:var(--accent-ink);font-family:var(--display);font-size:22px;text-align:center;font-variant-numeric:tabular-nums}.guest .stack{display:flex;flex-direction:column;gap:10px;margin-top:14px}.guest .g-instagram-gap{margin-top:28px}.guest .ai-footer-link{margin-top:22px;text-align:center}.guest .ai-footer-link a{display:inline-block;padding:10px 16px;border-radius:20px;background:var(--surface);color:var(--text-muted);font-size:11px;letter-spacing:.07em;text-decoration:none}.guest.g-notice{align-items:center;padding:40px 20px}.guest .notice-card{position:relative;z-index:1;width:100%;max-width:420px;text-align:center;animation:g-fade .7s var(--ease-out) both}.guest .notice-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 auto 32px;border-radius:50%;border:1px solid var(--accent-border);background:var(--surface);color:var(--accent-ink);animation:g-breathe 3s ease-in-out infinite}.guest .notice-title{margin-bottom:16px;color:var(--text-primary);font-family:var(--display);font-size:clamp(36px,10vw,52px);font-weight:400;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}.guest .notice-text{max-width:34ch;margin:0 auto;color:var(--text-secondary);font-size:15px;line-height:1.65}.guest .notice-help{margin-top:36px;padding:24px;border-radius:16px;border:1px solid var(--accent-border);background:var(--surface);text-align:left}.guest .notice-help p{color:var(--text-secondary);font-size:14px;line-height:1.65}.guest .notice-help .instagram-btn{margin-top:18px}.guest .notice-retry{margin-top:28px}.guest .shape-hint{margin:0 2px 12px;color:var(--text-muted);font-size:13px;line-height:1.5}.guest .thumb-btn{display:grid;flex-shrink:0;place-items:center;width:72px;height:72px;padding:0;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:transform .15s var(--ease-out)}.guest .thumb-btn:active:not(:disabled){transform:scale(.95)}.guest .thumb-btn:disabled{cursor:default}.guest .crop-thumb{position:relative;display:block;overflow:hidden;border-radius:6px;background:var(--surface)}.guest .crop-thumb.round{border-radius:50%}.guest .crop-thumb:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--border);pointer-events:none}.guest .crop-thumb img{position:absolute;display:block;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.guest .crop-thumb img.uncropped{inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.guest .shape-pill{display:inline-flex;align-items:center;gap:7px;max-width:100%;height:36px;margin-bottom:10px;padding:0 4px 0 10px;border-radius:999px;border:1px solid var(--accent-border);background:var(--surface);color:var(--text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s,transform .15s var(--ease-out)}.guest .shape-pill .shape-glyph{flex-shrink:0;color:var(--accent-ink)}.guest .shape-pill-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest .shape-pill-action{flex-shrink:0;margin-left:2px;padding:5px 10px;border-radius:999px;background:var(--accent-glow);color:var(--accent-ink);font-size:12px}.guest .shape-pill:active:not(:disabled){transform:scale(.97)}.guest .shape-pill:disabled{opacity:.5;cursor:default}@media (hover:hover) and (pointer:fine){.guest .shape-pill:not(:disabled):hover{background:var(--surface-raised);border-color:var(--accent-ink)}}.guest .shape-pill.wide{width:100%;height:52px;margin:0 0 10px;padding:0 8px 0 9px;border-radius:14px;font-size:14px}.guest .shape-pill.wide .crop-thumb{flex-shrink:0;margin-right:4px}.guest .shape-pill.wide .shape-pill-action{margin-left:auto;padding:7px 14px;font-size:13px}.guest .crop-editor{--crop-ink:#f4efe8;--crop-ink-soft:rgba(244,239,232,0.74);--crop-line:rgba(244,239,232,0.16);position:fixed;inset:0;z-index:1100;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;background:#0b0a09;color:var(--crop-ink);animation:g-crop-in .26s var(--ease-out) both}.guest .crop-editor.closing{pointer-events:none;animation:g-crop-out .18s var(--ease-out) both}.guest .crop-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top, 0px) + 8px) 12px 8px}.guest .crop-bar h2{margin:0;color:var(--crop-ink);font-family:var(--display);font-size:19px;font-weight:400;letter-spacing:-.01em;white-space:nowrap}.guest .crop-text-btn{justify-self:start;min-height:44px;padding:0 8px;border:none;border-radius:10px;background:none;color:var(--crop-ink-soft);font-size:15px;cursor:pointer;transition:color .2s,transform .15s var(--ease-out)}.guest .crop-done{justify-self:end;height:40px;padding:0 20px;border:none;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,transform .15s var(--ease-out)}.guest .crop-done:active,.guest .crop-text-btn:active{transform:scale(.96)}@media (hover:hover) and (pointer:fine){.guest .crop-text-btn:hover{color:var(--crop-ink)}.guest .crop-done:hover{background:var(--accent-hover)}}.guest .crop-stage{position:relative;overflow:hidden;cursor:grab;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.guest .crop-stage:active{cursor:grabbing}.guest .crop-stage:focus-visible{outline-offset:-4px}.guest .crop-photo{max-width:none;transform-origin:0 0;-webkit-user-drag:none}.guest .crop-frame,.guest .crop-photo{position:absolute;top:0;left:0;pointer-events:none}.guest .crop-frame{overflow:hidden;box-shadow:0 0 0 200vmax rgba(8,7,6,.66),inset 0 0 0 1px rgba(255,255,255,.85)}.guest .crop-grid{position:absolute;inset:0;opacity:0;background:linear-gradient(90deg,transparent calc(33.333% - .5px),rgba(255,255,255,.45) 0 calc(33.333% + .5px),transparent 0 calc(66.666% - .5px),rgba(255,255,255,.45) 0 calc(66.666% + .5px),transparent 0),linear-gradient(180deg,transparent calc(33.333% - .5px),rgba(255,255,255,.45) 0 calc(33.333% + .5px),transparent 0 calc(66.666% - .5px),rgba(255,255,255,.45) 0 calc(66.666% + .5px),transparent 0);transition:opacity .35s ease}.guest .crop-frame.active .crop-grid{opacity:1;transition-duration:.12s}.guest .crop-hint{position:absolute;right:20px;bottom:12px;left:20px;color:var(--crop-ink-soft);font-size:13px;line-height:1.45;text-align:center;pointer-events:none;transition:opacity .3s ease}.guest .crop-hint.gone{opacity:0}.guest .crop-tools{display:flex;flex-direction:column;min-width:0;gap:12px;padding:14px 16px calc(env(safe-area-inset-bottom, 0px) + 16px);border-top:1px solid rgba(244,239,232,.07)}.guest .crop-shapes{display:flex;gap:8px;margin:0 -16px;padding:2px 16px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.guest .crop-shapes::-webkit-scrollbar{display:none}.guest .crop-shape{display:inline-flex;flex:none;align-items:center;gap:8px;height:44px;padding:0 16px 0 12px;border-radius:999px;border:1px solid var(--crop-line);background:rgba(244,239,232,.06);color:var(--crop-ink-soft);font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s var(--ease-out)}.guest .crop-shape:active{transform:scale(.96)}.guest .crop-shape[aria-pressed=true]{border-color:var(--crop-ink);background:var(--crop-ink);color:#15110d}.guest .crop-row{display:flex;align-items:center;gap:16px;min-height:40px}.guest .crop-rotate{display:inline-flex;flex:none;align-items:center;gap:8px;height:40px;padding:0 14px 0 11px;border-radius:999px;border:1px solid var(--crop-line);background:transparent;color:var(--crop-ink-soft);font-size:13px;font-weight:600;cursor:pointer;transition:color .2s,border-color .2s,transform .15s var(--ease-out)}.guest .crop-rotate:active{transform:scale(.96)}.guest .crop-zoom{display:flex;flex:1;align-items:center;gap:10px;min-width:0;color:var(--crop-ink-soft)}.guest .crop-zoom input{flex:1;min-width:0;height:32px;margin:0;accent-color:var(--crop-ink);cursor:pointer}@media (min-width:720px){.guest .crop-tools>*{width:100%;max-width:560px;margin-right:auto;margin-left:auto}.guest .crop-shapes{flex-wrap:wrap;justify-content:center;padding:2px 0}}@keyframes g-rise{to{opacity:1;transform:translateY(0)}}@keyframes g-rise-from{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes g-fade{0%{opacity:0}to{opacity:1}}@keyframes g-item-in{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}@keyframes g-item-out{0%{opacity:1;transform:translateX(0) scale(1)}to{opacity:0;transform:translateX(40px) scale(.95)}}@keyframes g-counter-pop{0%{transform:scale(1)}40%{transform:scale(1.28)}75%{transform:scale(.94)}to{transform:scale(1)}}@keyframes g-particle{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.15)}}@keyframes g-draw{to{stroke-dashoffset:0}}@keyframes g-shimmer{0%{transform:translateX(-200%)}to{transform:translateX(300%)}}@keyframes g-spin{to{transform:rotate(1turn)}}@keyframes g-cooldown-pulse{0%,to{opacity:1;text-shadow:0 0 18px var(--accent-glow)}50%{opacity:.88;text-shadow:0 0 6px transparent}}@keyframes g-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes g-modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes g-image-in{0%{opacity:0;filter:blur(8px);transform:scale(.95)}to{opacity:1;filter:none;transform:none}}@keyframes g-ai-reveal{0%{clip-path:inset(0 0 100% 0);filter:blur(6px);transform:scale(1.03)}65%{filter:blur(1.2px)}to{clip-path:inset(0 0 0 0);filter:blur(0);transform:scale(1)}}@keyframes g-dissolve{to{opacity:0;filter:blur(4px)}}@keyframes g-gen-pulse{0%,to{filter:saturate(1) brightness(1)}50%{filter:saturate(1.35) brightness(1.07)}}@keyframes g-scan{0%{top:2%}50%{top:98%}to{top:2%}}@keyframes g-shimmer-sweep{0%{background-position:210% 0}to{background-position:-60% 0}}@keyframes g-spark{0%,to{opacity:0;transform:scale(.4)}45%,60%{opacity:1;transform:scale(1)}}@keyframes g-blink{0%,80%,to{opacity:.25}40%{opacity:1}}@keyframes g-crop-in{0%{opacity:0;transform:scale(.985)}}@keyframes g-crop-out{to{opacity:0;transform:scale(.985)}}@keyframes g-breathe{0%,to{opacity:1;box-shadow:0 0 28px var(--accent-glow)}50%{opacity:.6;box-shadow:0 0 12px transparent}}@media (prefers-reduced-motion:reduce){.guest .g-actions,.guest .g-header,.guest .step{opacity:1;transform:none;animation:none}.guest .ai-frame .stage-img,.guest .ai-stage,.guest .cooldown-digits,.guest .counter-number.at-max,.guest .notice-icon,.guest .particle,.guest .photo-item,.guest .preview-container,.guest .result-actions,.guest .sheet-panel{animation:g-fade .2s ease both}.guest .photo-item.removing{animation:none;opacity:0}.guest .particle{display:none}.guest .state-overlay.show .check-circle,.guest .state-overlay.show .check-mark{stroke-dashoffset:0;animation:none}.guest .lang-thumb,.guest .state-overlay{transition:opacity .2s ease,visibility 0s}.guest .gen-shimmer,.guest .scan-line,.guest .send-btn:after,.guest .spark{display:none}.guest .ai-frame.revealed .result-img{clip-path:inset(0 0 0 0);filter:none;transform:none;animation:g-fade .3s ease both}.guest .crop-editor{animation:g-fade .2s ease both}.guest .crop-done,.guest .crop-rotate,.guest .crop-shape,.guest .crop-text-btn,.guest .shape-pill,.guest .thumb-btn{transform:none!important}}