/* Two separate screens: birthday form -> full-window packet -> reveal. */
.start-screen{min-height:calc(100svh - 173px);display:flex;align-items:center;justify-content:center;padding:44px 24px 40px}
.start-screen .copy-column{width:440px;max-width:100%;padding:0}
.start-screen h1{font-size:66px}
.start-screen form{max-width:none}
.start-screen .edition-note{position:static;margin-top:30px}
.opening-screen{position:fixed;inset:0;background:var(--paper);z-index:20;display:grid;grid-template-rows:80px minmax(0,1fr) 96px;overflow:hidden}
body.screen-opening{overflow:hidden}
body.screen-opening>.header,body.screen-opening>footer{display:none}
.opening-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 5%;gap:20px;color:var(--blue);z-index:10}
.opening-nav .brand img{height:40px;width:40px}
.opening-nav .text-button{color:var(--blue)}
.opening-screen .visual-column{height:100%;width:100%;margin:0;display:grid;place-items:center;min-height:0;overflow:hidden}
.opening-screen .stage{width:min(760px,100vw);height:620px;margin:0;transform:none;transform-origin:center;flex:none}
.opening-screen .stage-caption,.opening-screen .orbit-label,.opening-screen .stage-index{display:none}
.opening-screen .stage:not(.is-opening):not(.is-open) .floating-sticker{opacity:0}
.opening-screen .stage-status{font-size:11px;bottom:6px}
.opening-actions{display:flex;justify-content:center;align-items:center;gap:24px;padding:16px 20px 26px;z-index:10}
.opening-actions .primary{width:230px;min-height:48px;font-size:12px}
.opening-actions .text-button{font-size:12px}
#card-name:focus{outline:none}
@media(max-width:760px){
  .start-screen{min-height:calc(100svh - 155px);padding:34px 7% 30px}
  .start-screen .copy-column{width:100%;max-width:440px}
  .start-screen h1{font-size:clamp(40px,10vw,58px)}
  .start-screen .edition-note{margin-top:27px}
  .opening-screen{grid-template-rows:70px minmax(0,1fr) 100px}
  .opening-nav{padding:15px 6%;gap:10px}
  .opening-nav .brand img{width:34px;height:34px}
  .opening-nav .tiny-en{font-size:8px;letter-spacing:.08em}
  .opening-nav .text-button{font-size:10px}
  .opening-screen .stage{height:580px;width:390px;max-width:100vw;transform:scale(.94);transform-origin:center}
  .opening-screen .stage-status{bottom:12px;font-size:10px}
  .opening-actions{padding:12px 7% 24px;gap:20px}
  .opening-actions .primary{width:215px;font-size:11px}
  .opening-actions .text-button{font-size:10px}
}
@media(max-width:360px){.opening-screen .stage{transform:scale(.83)}.opening-nav .tiny-en{font-size:7px}.opening-actions{gap:12px}.opening-actions .primary{width:190px}}
@media(max-height:740px) and (min-width:761px){.opening-screen{grid-template-rows:65px minmax(0,1fr) 80px}.opening-screen .stage{transform:scale(.8)}.opening-actions{padding:10px 20px 20px}}
@media(max-height:700px) and (max-width:760px){.opening-screen{grid-template-rows:60px minmax(0,1fr) 86px}.opening-screen .stage{transform:scale(.79)}.opening-actions{padding-bottom:18px}}
@media(prefers-reduced-motion:reduce){.opening-screen{scroll-behavior:auto}}
