@font-face{font-family:Inter-Bold;src:url('inter-bold.ttf') format('truetype');font-display:block}
@font-face{font-family:Inter-SemiBold;src:url('inter-semibold.ttf') format('truetype');font-display:block}
@font-face{font-family:PlusJakartaSans-Regular;src:url('jakarta-regular.ttf') format('truetype');font-display:block}
@font-face{font-family:PlusJakartaSans-Medium;src:url('jakarta-medium.ttf') format('truetype');font-display:block}
@font-face{font-family:PlusJakartaSans-SemiBold;src:url('../assets/jakarta-semibold.ttf') format('truetype');font-display:block}
@font-face{font-family:Ionicons;src:url('ionicons.ttf') format('truetype');font-display:block}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#080704}body{user-select:none;pointer-events:none;-webkit-font-smoothing:antialiased}
#canvas{width:390px;height:844px;position:absolute;top:0;left:0;transform-origin:top left;background:#080704;color:#f4ead7;overflow:hidden}
.status{position:absolute;inset:0 0 auto;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 27px 0 32px;font-family:Inter-SemiBold,sans-serif;font-size:15px;z-index:8;background:#080704}.status>span{display:flex;align-items:center;gap:5px}
.scene{position:absolute;inset:57px 0 28px;display:flex;flex-direction:column;background:#080704;opacity:0;visibility:hidden;will-change:transform,opacity;overflow:hidden}
.scene:first-of-type{opacity:1;visibility:visible}
.scene-content{flex:1;min-height:0;overflow:hidden}.scene-content>div{will-change:transform}
.scene-footer{flex-shrink:0;background:#080704;z-index:2;padding-top:4px}
[data-type]{white-space:pre-wrap}[data-typing=true]:after{content:'';display:inline-block;width:2px;height:1em;background:#edc16d;margin-left:3px;vertical-align:-2px}
#tap{position:absolute;z-index:10;width:44px;height:44px;border:1.5px solid #fff9;border-radius:50%;background:#fff2;opacity:0;transform:translate(-50%,-50%);pointer-events:none}
/* Edge-to-edge product surface: status bar belongs to the app; hardware does not. */
.capture{inset:0}.capture img{display:block;width:390px;height:844px}.capture .scene-content{overflow:hidden}
#gift-drop{position:absolute;left:168px;top:450px;width:54px;height:66px;opacity:0;z-index:11;pointer-events:none}
.nectar-panel textarea{resize:none;overflow:hidden}

.scene-content{mask-image:linear-gradient(to bottom,transparent,#000 9px,#000 calc(100% - 7px),transparent)}
.capture .scene-content{mask-image:none}
.status,#canvas{background:color-mix(in srgb,#080704,var(--ending-ground,#332918) var(--ending-reveal,0%))}
.scene[data-scene=done]{inset:0}.scene[data-scene=done] .scene-content{mask-image:none}.scene[data-scene=done] .scene-content>div{min-height:844px!important}
