#ui.is-photo>:not(.photo){opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .18s,visibility 0s linear .18s!important}.photo{z-index:6;--photo-top:calc(var(--gutter) + var(--safe-top));--photo-bottom:calc(var(--gutter) + var(--safe-bottom));--photo-dock-h:112px;position:fixed;inset:0}.photo-stage{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.photo-stage.is-dragging{cursor:grabbing}.photo-frame{top:calc(var(--photo-top) + 64px);bottom:calc(var(--photo-bottom) + var(--photo-dock-h) + 18px);left:calc(var(--gutter) + var(--safe-left) + 6px);right:calc(var(--gutter) + var(--safe-right) + 6px);pointer-events:none;opacity:0;transition:opacity .3s 80ms;position:absolute}.photo.is-open .photo-frame{opacity:1}.photo-frame i{border:0 solid var(--paper);width:34px;height:34px;filter:drop-shadow(2px 2px 0 var(--ink-deep));position:absolute}.photo-frame i:first-child{border-top-width:3px;border-left-width:3px;top:0;left:0}.photo-frame i:nth-child(2){border-top-width:3px;border-right-width:3px;top:0;right:0}.photo-frame i:nth-child(3){border-bottom-width:3px;border-left-width:3px;bottom:0;left:0}.photo-frame i:nth-child(4){border-bottom-width:3px;border-right-width:3px;bottom:0;right:0}.photo-flash{opacity:0;pointer-events:none;background:#fffaf0;position:absolute;inset:0}.photo-flash.is-on{animation:.46s cubic-bezier(.2,.8,.2,1) photo-flash}@keyframes photo-flash{0%{opacity:.9}to{opacity:0}}.photo-top{top:var(--photo-top);left:calc(var(--gutter) + var(--safe-left));right:calc(var(--gutter) + var(--safe-right));pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;transition:transform .38s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;transform:translateY(calc(-100% - 30px))}.photo-top>*{pointer-events:auto}.photo.is-open .photo-top{transform:none}.photo-tag{align-items:stretch;min-width:0;min-height:48px;display:flex}.photo-tag .kicker{background:var(--sun);color:var(--ink-deep);border-right:2px solid var(--rule);white-space:nowrap;align-items:center;padding:0 14px;display:flex}.photo-place{min-width:0;font:400 1.75rem/1 var(--font-serif);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;align-items:center;margin:0;padding:3px 16px 0 14px;display:flex;overflow:hidden}.photo-close{appearance:none;cursor:pointer;min-height:48px;font:400 1.18rem/1 var(--font-label);letter-spacing:.045em;text-transform:uppercase;flex:none;align-items:stretch;padding:0;transition:background-color .12s;display:flex}.photo-close-label{align-items:center;gap:8px;padding:2px 14px 0;display:flex}.photo-close-label:before{content:"";background:currentColor;width:7px;height:7px;margin-top:-2px}.photo-close-x{border-left:2px solid var(--rule);place-items:center;width:46px;display:grid}.photo-close-x svg{width:18px;height:18px}.photo-close:hover{background:var(--surface-2)}.photo-close:hover .photo-close-x{background:var(--coral);color:var(--ink-deep)}.photo-close:focus-visible{outline-offset:3px}.photo-dock{left:50%;bottom:var(--photo-bottom);width:min(900px, calc(100vw - 2 * var(--gutter) - var(--safe-left) - var(--safe-right)));box-shadow:var(--shadow-lg);transition:transform .42s cubic-bezier(.2,.8,.2,1);position:absolute;transform:translate(-50%,calc(100% + 40px))}.photo.is-open .photo-dock{transform:translate(-50%)}.photo-hint{border-bottom:2px solid var(--rule);background:var(--surface-2);color:var(--text-soft);font:400 .74rem/1.3 var(--font-mono);letter-spacing:0;margin:0;padding:8px 14px 7px}.photo-row{align-items:stretch;min-height:64px;display:flex}.photo-looks{scrollbar-width:none;overscroll-behavior-x:contain;flex:1;min-width:0;display:flex;overflow-x:auto}.photo-looks::-webkit-scrollbar{display:none}.photo-look,.photo-stamp{appearance:none;border:0;border-right:2px solid var(--rule);color:inherit;cursor:pointer;font:400 1.12rem/1 var(--font-label);letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;background:0 0;border-radius:0;flex:1 0 auto;justify-content:center;align-items:center;gap:9px;margin:0;padding:2px 14px 0;transition:background-color .12s,color .12s;display:inline-flex}.photo-look:hover,.photo-stamp:hover{background:var(--surface-2)}.photo-look[aria-pressed=true]{background:var(--text);color:var(--surface)}.photo-look:focus-visible,.photo-stamp:focus-visible{outline-offset:-5px}.photo-swatch{border:2px solid;flex:none;width:18px;height:18px;margin-top:-2px}.photo-swatch-original{background:linear-gradient(135deg,#8fcbd2 0 34%,#f4c430 34% 62%,#7fae5a 62%)}.photo-swatch-golden{background:linear-gradient(135deg,#ffd98a 0 34%,#f39a4c 34% 66%,#c4572f 66%)}.photo-swatch-film{background:linear-gradient(135deg,#e9d6b4 0 34%,#b9775a 34% 66%,#4e7d7b 66%)}.photo-swatch-noir{background:linear-gradient(135deg,#f2efe8 0 34%,#8a8a86 34% 66%,#161616 66%)}.photo-swatch-pastel{background:linear-gradient(135deg,#f8d7de 0 34%,#d5e6f6 34% 66%,#e9f3d8 66%)}.photo-stamp{flex:none;gap:10px}.photo-check{border:2px solid;place-items:center;width:18px;height:18px;margin-top:-2px;display:grid}.photo-stamp[aria-pressed=true] .photo-check{background:var(--text)}.photo-stamp[aria-pressed=true] .photo-check:after{content:"";border:solid var(--surface);border-width:0 2px 2px 0;width:5px;height:9px;margin-top:-2px;transform:rotate(45deg)}.photo-shutter{appearance:none;background:var(--sun);min-width:190px;color:var(--ink-deep);cursor:pointer;font:400 1.7rem/1 var(--font-label);letter-spacing:.035em;text-transform:uppercase;border:0;border-radius:0;flex:none;justify-content:center;align-items:center;gap:10px;margin:0;padding:3px 22px 0 18px;transition:background-color .14s;display:inline-flex}.photo-shutter:hover{background:#ffd34d}.photo-shutter:active{background:var(--coral)}.photo-shutter:focus-visible{outline:3px solid var(--ink-deep);outline-offset:-7px}.photo-shutter-icon{width:28px;height:28px;margin-top:-3px;display:inline-flex}.photo-shutter-icon svg{width:100%;height:100%}.photo.is-busy .photo-shutter{cursor:progress;background:var(--paper-3)}.photo-toast{top:calc(var(--photo-top) + 64px);width:max-content;max-width:min(520px, calc(100vw - 2 * var(--gutter)));background:var(--ink-deep);color:var(--paper);border:2px solid var(--ink-deep);box-shadow:4px 4px 0 var(--coral);font:600 .9rem/1.3 var(--font-body);pointer-events:none;opacity:0;z-index:2;align-items:center;gap:10px;margin:0;padding:9px 16px 9px 13px;transition:opacity .2s,transform .26s cubic-bezier(.2,1.3,.4,1);display:flex;position:absolute;left:50%;transform:translate(-50%,-10px)}.photo-toast:before{content:"";background:var(--sun);flex:none;width:8px;height:8px}.photo-toast.is-visible{opacity:1;transform:translate(-50%)}:root.is-night .photo-toast{border-color:var(--paper)}.photo.has-preview .photo-toast{top:auto;bottom:var(--photo-bottom)}.photo.has-preview>:is(.photo-top,.photo-dock,.photo-frame){visibility:hidden}.photo-preview{padding:max(16px, var(--safe-top)) max(16px, var(--safe-right)) max(16px, var(--safe-bottom)) max(16px, var(--safe-left));opacity:0;background:#13252a8c;place-items:center;transition:opacity .24s;display:grid;position:absolute;inset:0;overflow-y:auto}.photo-preview.is-open{opacity:1}.photo-card{width:min(1000px,100%);max-height:100%;box-shadow:8px 8px 0 var(--shadow-c);flex-direction:column;transition:transform .42s cubic-bezier(.2,1.2,.4,1);display:flex;transform:translateY(18px)rotate(-.6deg)}.photo-preview.is-open .photo-card{transform:none}.photo-card .panel-head .kicker{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:24px;display:block;overflow:hidden}.photo-card-body{flex-direction:column;gap:14px;min-height:0;padding:14px;display:flex}.photo-figure{justify-content:center;min-height:0;margin:0;display:flex}.photo-figure img{border:2px solid var(--rule);background:var(--ink-deep);width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 178px);box-shadow:var(--shadow-sm);display:block}.photo-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.photo-actions .btn-cta{background:var(--coral)}.photo-actions .btn.is-done{background:var(--mint);color:var(--ink-deep)}.photo-again{margin-left:4px}.photo-again .btn-icon{margin-right:2px}.photo-meta{font:400 .72rem/1 var(--font-mono);color:var(--text-soft);font-variant-numeric:tabular-nums;margin-left:auto}@media (max-width:640px){.photo{--photo-dock-h:150px}.photo-tag .kicker{display:none}.photo-place{padding:3px 14px 0 12px;font-size:1.45rem}.photo-tag:before{content:"";background:var(--sun);border-right:2px solid var(--rule);flex:none;width:12px}.photo-close-label{display:none}.photo-close-x{border-left:0;width:48px}.photo-hint{padding:7px 12px 6px;font-size:.7rem}.photo-row{flex-wrap:wrap;min-height:0}.photo-looks{border-bottom:2px solid var(--rule);flex:1 0 100%;overflow:visible}.photo-look{letter-spacing:.03em;white-space:normal;text-align:center;flex-direction:column;flex:1 1 0;gap:5px;min-width:0;padding:9px 2px 6px;font-size:.92rem;line-height:.95}.photo-look .photo-swatch{margin-top:0}.photo-look:last-child{border-right:0}.photo-stamp{min-height:60px}.photo-shutter{flex:1;min-width:0;min-height:60px;font-size:1.55rem}.photo-frame{left:calc(var(--gutter) + 2px);right:calc(var(--gutter) + 2px)}.photo-frame i{width:26px;height:26px}.photo-toast{top:calc(var(--photo-top) + 60px)}.photo-card-body{gap:10px;padding:10px}.photo-figure img{max-height:calc(100dvh - 222px)}.photo-actions .btn{flex:auto}.photo-again{margin-left:0}.photo-meta{display:none}}@media (max-height:520px) and (orientation:landscape){.photo{--photo-dock-h:58px}.photo-tag,.photo-close{min-height:42px}.photo-place{font-size:1.35rem}.photo-hint{display:none}.photo-row{min-height:54px}.photo-look{gap:7px;padding:2px 11px 0;font-size:1rem}.photo-swatch{width:15px;height:15px}.photo-shutter{min-width:150px;font-size:1.4rem}.photo-frame{top:calc(var(--photo-top) + 56px)}.photo-toast{top:calc(var(--photo-top) + 54px)}.photo-preview{padding:8px max(8px, var(--safe-right)) 8px max(8px, var(--safe-left))}.photo-card{width:auto;max-width:100%}.photo-card .panel-head{min-height:40px}.photo-card-body{flex-direction:row;align-items:flex-start;gap:12px;padding:10px}.photo-figure img{max-width:calc(100vw - 236px);max-height:calc(100dvh - 84px)}.photo-actions{flex-direction:column;flex:none;align-items:stretch;width:180px}.photo-again{margin-left:0}.photo-meta{margin:4px 0 0}}@media (min-width:641px) and (max-width:900px){.photo-look{gap:7px;padding:2px 11px 0}.photo-shutter{min-width:160px}}.photo.is-reduced :is(.photo-top,.photo-dock,.photo-card,.photo-preview,.photo-frame,.photo-toast){transition:none!important}.photo.is-reduced .photo-card{transform:none}@media (prefers-reduced-motion:reduce){.photo-flash.is-on{animation:none}}
