.camera-transition{position:fixed;inset:0;z-index:115;display:grid;place-items:center;background:#07090df5;pointer-events:none;opacity:0;visibility:hidden;overflow:hidden;isolation:isolate;animation:sceneReveal .65s both}.transition-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,#687a9620,transparent 65%),radial-gradient(ellipse at bottom,#ff653d15,transparent 60%)}.transition-camera{width:min(62vh,65vw,550px);aspect-ratio:1;position:relative;animation:lensRelease .65s both}.transition-lens{position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(#0b0d10 0deg .8deg,#454c55 .8deg 1.2deg,#171c23 1.2deg 2deg);box-shadow:0 30px 100px #000,inset 0 0 0 2px #969fa966,inset 0 0 0 6px #11151b,inset 0 0 0 8px #59606a;isolation:isolate}.lens-metal{position:absolute;inset:4%;border-radius:50%;background:conic-gradient(from -35deg,#101319,#acb8c9 8%,#333945 15%,#090b10 28%,#3a424c 48%,#8d98a5 53%,#1c212a 63%,#080a0f 78%,#526071);box-shadow:inset 0 0 0 2px #d8e5ff44,inset 0 0 0 8px #10141b,inset 0 0 0 10px #b7c2d333,inset 0 0 0 32px #13171d}.lens-markings{position:absolute;inset:8%;border-radius:50%;background:repeating-conic-gradient(from 5deg,#bcc5cd88 0deg .2deg,transparent .2deg 6deg);mask:radial-gradient(transparent 65%,#000 66%,#000 69%,transparent 70%);animation:ringRelease .65s both}.lens-engraving,.lens-spec{position:absolute;left:0;right:0;text-align:center;font:500 clamp(7px,1vw,10px)/1 'DM Sans',sans-serif;letter-spacing:3px;color:#b4bcc5}.lens-engraving{top:11%}.lens-spec{bottom:10%;letter-spacing:4px}.lens-optics{position:absolute;inset:18%;border-radius:50%;overflow:hidden;border:2px solid #8390a155;background:radial-gradient(ellipse at 30% 20%,#313f5f66,transparent 50%),radial-gradient(ellipse at 75% 85%,#6e396544,transparent 50%),#030609;box-shadow:0 0 0 4px #020408,0 0 0 8px #343d4944,0 0 0 11px #020408,inset 0 0 40px #000}.lens-optics:before,.lens-optics:after{content:'';position:absolute;border:1px solid #8faadd26;border-radius:50%;inset:5%;z-index:3;box-shadow:inset 0 0 20px #3b5a8122}.lens-optics:after{inset:12%;border-color:#d58b9f15}.lens-iris{position:absolute;inset:0;border-radius:50%;animation:irisRelease .65s both}.lens-iris i{position:absolute;inset:-5%;background:linear-gradient(120deg,#353e4b,#101721 50%,#06090f);clip-path:polygon(50% 50%,65% 0,100% 0,100% 85%);transform:rotate(calc(var(--blade)*40deg));filter:drop-shadow(-1px 0 #abbdd52a)}.lens-iris:after{content:'';position:absolute;inset:32%;border-radius:50%;background:#030609;box-shadow:0 0 25px #000}.lens-reflection{position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(130deg,transparent 10%,#c2d7fc1a 18%,transparent 30%,transparent 60%,#b6a7e411 68%,transparent 76%);border-radius:50%}.transition-logo{position:absolute;inset:0;display:grid;place-items:center;z-index:3;animation:logoRelease .65s both}.transition-logo .logo-frame{width:68%;filter:invert(1);mix-blend-mode:normal}.lens-focus-dot{position:absolute;top:5.4%;left:49.5%;width:1%;aspect-ratio:1;background:#ff653d;border-radius:50%;box-shadow:0 0 10px #ff653d}.capture-meta{position:absolute;top:8%;left:7%;font-size:10px;letter-spacing:3px;color:#ddd}.capture-meta span{display:block;margin-top:10px;font-size:7px;letter-spacing:2px;color:#737c8b}.capture-status{position:absolute;bottom:9%;font-size:8px;letter-spacing:4px;color:#9da6b3;display:flex;gap:15px;align-items:center}.capture-status i{width:5px;height:5px;background:#ff653d;border-radius:50%}.capture-corner{position:absolute;width:55px;height:55px;border-color:#b4c4df55;border-style:solid}.capture-corner.tl{left:7%;top:22%;border-width:1px 0 0 1px}.capture-corner.br{right:7%;bottom:22%;border-width:0 1px 1px 0}.capture-flash{position:absolute;inset:0;background:radial-gradient(ellipse,#fff,#edf1ff);opacity:0;z-index:8}.page-leaving .camera-transition{animation:sceneCapture 1.05s both;pointer-events:all}.page-leaving .transition-camera{animation:lensCapture 1.05s both}.page-leaving .lens-markings{animation:ringCapture 1.05s both}.page-leaving .lens-iris{animation:irisCapture 1.05s both}.page-leaving .transition-logo{animation:logoCapture 1.05s both}.page-leaving .capture-flash{animation:exposure 1.05s both}.motion-paused .camera-transition{display:none}
@keyframes sceneReveal{0%,15%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}@keyframes sceneCapture{0%{opacity:0;visibility:visible}15%,100%{opacity:1;visibility:visible}}@keyframes lensRelease{from{transform:scale(1.1)}to{transform:scale(1.25)}}@keyframes lensCapture{0%{transform:scale(.8) rotate(-7deg);filter:blur(6px)}32%{transform:scale(1) rotate(0);filter:blur(0)}60%{transform:scale(1.025)}100%{transform:scale(1.15)}}@keyframes ringRelease{to{transform:rotate(20deg)}}@keyframes ringCapture{from{transform:rotate(-25deg)}60%,100%{transform:rotate(15deg)}}@keyframes irisRelease{from{transform:scale(.8) rotate(50deg);opacity:1}to{transform:scale(1.6) rotate(0);opacity:.2}}@keyframes irisCapture{0%{transform:scale(1.5) rotate(0);opacity:.3}50%{transform:scale(.7) rotate(45deg);opacity:1}68%{transform:scale(.9) rotate(65deg)}100%{transform:scale(1.4) rotate(90deg);opacity:.3}}@keyframes logoRelease{from{opacity:1}to{opacity:0;transform:scale(1.1)}}@keyframes logoCapture{0%,20%{opacity:0;transform:scale(.5);filter:blur(8px)}50%{opacity:1;transform:scale(1);filter:blur(0)}67%,100%{opacity:1;transform:scale(1.08);filter:drop-shadow(0 0 14px #dbe7ff99)}}@keyframes exposure{0%,65%{opacity:0}71%{opacity:.96}85%,100%{opacity:0}}
@media(max-width:600px){.transition-camera{width:82vw}.capture-meta{font-size:8px}.capture-corner{width:30px;height:30px}.lens-engraving{letter-spacing:1.3px}.lens-spec{letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){body:not(.motion-enabled) .camera-transition{display:none!important}}
