/* R2 remains the layout baseline; these rules connect its live controls. */
html{scrollbar-width:none}html::-webkit-scrollbar{display:none}
[hidden]{display:none!important}button,a,label{touch-action:manipulation}button:disabled{opacity:.65;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #8b1721;outline-offset:3px}
.upload-select{display:block;position:relative;cursor:pointer}.upload-select input[type=file]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.remove-photo{z-index:5;border:0;background:#fff;border-radius:50%;padding:0;cursor:pointer}.remove-photo img{width:100%;height:100%}.upload-card.has-photo .empty-photo{display:none}.upload-card.has-photo .photo{display:block}.alt-upload .line{margin:auto;padding:0;border:0;background:transparent;color:inherit;font-weight:inherit}.upload-status,.modal-status,.live-status{font-size:12px;line-height:1.5;color:#8b1721;text-align:center;margin:8px 24px}.upload-status:empty,.modal-status:empty,.live-status:empty{display:none}.page-upload .privacy{line-height:1.5;white-space:pre-line}.footer a+a:before{content:'|';margin:0 9px;color:#cabdaf}
.modal-open{overflow:hidden}.modal-layer{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px}.modal-shade{position:absolute;inset:0;background:#25181580}.upload-modal{position:relative;width:min(100%,390px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;border-radius:20px;padding:22px;background:#fbf7f0;text-align:center;box-shadow:0 8px 40px #25181540}.upload-modal h2{font-family:var(--display);color:var(--wine);margin:8px 0;font-size:24px}.upload-modal>p{font-size:12px}.couple-close{position:absolute;right:10px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:#fff;font-size:24px}.couple-tile{border:1px dashed #dfb9aa;border-radius:12px;overflow:hidden;padding-bottom:10px}.couple-tile .empty-photo{aspect-ratio:1.5}.couple-tile .photo{width:100%;max-height:230px;object-fit:contain;background:#eee8df}.couple-tile>span{font-size:12px}.upload-modal .primary-cta{margin:16px 0 8px;width:100%;height:48px;font-weight:700}.upload-modal .remove-photo{border-radius:8px;padding:5px 10px;margin-top:8px}.upload-modal .privacy{display:block}
.hero-card.separate .hero-photo img{object-fit:contain}.score-lock.suspense strong{font-size:17px;white-space:nowrap}.hero-card.couple{overflow:visible;background:#eee8df}.hero-card.couple>img{object-fit:contain;border-radius:14px}.hero-card.couple:after{display:none}.hero-card.couple .score-lock{position:relative;left:auto;bottom:auto;transform:none;border:1px solid #ead8ca;background:#fff6e8;margin:4px auto 0;padding:3px;width:max-content;backdrop-filter:none}.hero-card.couple:has(.score-lock){margin-bottom:55px}.joint-caption{position:absolute;left:5px;top:5px;font-size:9px;background:#fff6e8;padding:2px 6px;border-radius:6px}.photo-unavailable{height:100%;display:grid;place-items:center;background:#eee8df;color:#726358;font-size:11px;text-align:center;padding:8px}.support{width:calc(100% - 40px);text-align:left;color:inherit;cursor:pointer}.retention{max-width:390px;margin:0 auto 10px;line-height:1.5;display:block}.page-unlock .footer{padding:8px 10px calc(76px + env(safe-area-inset-bottom,0px))}.sticky{padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))}.sticky button{min-height:40px}.page-unlock .live-status{position:relative;padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.tag-sale[hidden]{display:none}
dialog{width:min(calc(100% - 32px),390px);padding:24px;border:1px solid #dfb9aa;border-radius:18px;background:#fbf7f0;color:#342827}dialog::backdrop{background:#25181580}dialog h2{font-size:22px;color:#8b1721}dialog .sheet-close{float:right;border:0;background:transparent;font-size:24px}#paymentMethods{display:grid;gap:10px;margin:16px 0}#paymentMethods label{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid #dfb9aa;border-radius:10px}#paymentMethodContinue{width:100%;padding:12px;border:0;border-radius:999px;background:#a42531;color:white;font-weight:700}
.page-unlock .live-status{position:fixed;left:50%;bottom:calc(64px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:90;width:min(calc(100% - 32px),390px);margin:0;padding:12px;border:1px solid #dfb9aa;border-radius:12px;background:#fff7ef;box-shadow:0 4px 20px #25181530}
.hero-card.couple:has(.score-lock){height:auto;margin-bottom:0;background:transparent;border:0;border-radius:0}.hero-card.couple>img{display:block;height:auto;border:1px solid #ead8ca}.joint-caption{position:static;display:block;width:fit-content;margin:0 0 5px;font-size:10px}
.payment-brand{display:grid;place-items:center;flex:0 0 64px;width:64px;height:40px;border-radius:7px;background:#fff}.payment-brand img{display:block;width:56px;height:36px;object-fit:contain}.payment-brand--boost{background:#ed1c24;padding:4px}#paymentMethods label{min-height:62px}#paymentMethods input{margin:0;flex:0 0 auto}
.score-lock strong.score-reels{--score-reel-height:36px;display:flex;height:var(--score-reel-height);font-family:Arial,sans-serif;font-size:32px;font-weight:700;line-height:var(--score-reel-height);gap:1px;white-space:nowrap;font-variant-numeric:tabular-nums}.score-reel{display:block;width:22px;height:var(--score-reel-height);overflow:hidden}.score-reel-strip{display:flex;flex-direction:column;will-change:transform}.score-reel-cell{display:block;flex:0 0 var(--score-reel-height);height:var(--score-reel-height);text-align:center}.score-reel[data-state=settled] .score-reel-strip{will-change:auto}
.score-lock{gap:3px}.score-lock .score-label{font-size:14px;line-height:1.4;font-weight:600;color:var(--wine)}.hero-card.couple .score-lock{min-width:64px;padding:6px 8px}
.page-unlock .sticky{grid-template-columns:auto minmax(0,1fr)}.page-unlock .sticky button{font-size:16px;line-height:1.35;min-height:48px;padding:10px 8px}
@media(max-width:390px){.page-unlock .page-title .sub{font-size:12px}.page-unlock .feature-row{grid-template-columns:30px minmax(0,1fr) 88px;gap:6px}.page-unlock .feature-row .mini{width:88px;height:78px}.page-unlock .feature-copy h3{font-size:15px}.page-unlock .feature-copy ul{font-size:9px}.page-unlock .detail-head h2{font-size:21px}.page-unlock .hero-card.separate{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr)}}
/* Supplied bonus keeps its 16px gutters and independent scoped stylesheet. */
.page-unlock .hero-card.single{height:144px;display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:12px;padding:6px}.page-unlock .hero-card.single .hero-photo img{object-fit:contain}.page-unlock .hero-card.single .score-lock strong{font-size:18px;line-height:1.4}.page-unlock .hero-card.single .score-lock img{width:22px;height:22px}
.page-unlock .kunwu-bonus{margin:12px 16px}
.page-unlock .pay-btn{font-size:13px;line-height:1.4;padding:10px 8px;white-space:normal}
.page-unlock .sticky button{font-size:13px;line-height:1.4;white-space:normal}
