/* Four cards share the same 802 × 1457 artwork frame, except the existing invitation. */
#card[data-page="briefing"] #front-fallback,#card[data-page="briefing"] .back #back-image,
#card[data-page="presenter"] #front-fallback,#card[data-page="presenter"] .back #back-image{position:absolute;left:10.84%;top:0;width:78.32%;height:94.8568%;object-fit:contain;visibility:visible!important}
#card[data-page="briefing"] #briefing-start{left:10.84%;top:0;width:78.32%;height:94.8568%;touch-action:none}
#presenter-start{display:none;position:absolute;left:10.84%;top:0;width:78.32%;height:94.8568%;border:0;background:transparent;pointer-events:auto;touch-action:none}
#card[data-page="presenter"] #presenter-start{display:block}
#presenter-start:focus-visible{outline:3px solid #00c8ff;outline-offset:3px}
#card[data-page="presenter"] #front-canvas,#card[data-page="presenter"] #accept-invitation,#card[data-page="presenter"] #activity-rules,#card[data-page="presenter"] #corner-animation,#card[data-page="presenter"] #view-passport{display:none}
#card[data-page="briefing"] #reg-form-screen{left:10.84%;top:0;width:78.32%;height:94.8568%;touch-action:none}
#card[data-page="briefing"] #reg-form-screen .reg-art{aspect-ratio:802/1457}
#card #reg-form-screen .reg-field{font-size:max(16px,4.3cqw);touch-action:manipulation}
#reg-name{left:33.2918%;top:26.83596%;width:56.3591%;height:4.3926%}
#reg-title{left:33.2918%;top:34.7289%;width:56.3591%;height:4.3926%}
#reg-department{left:33.2918%;top:42.8277%;width:56.3591%;height:4.3926%}
#reg-line{left:33.2918%;top:51.2697%;width:56.3591%;height:4.3926%}
#reg-email{left:14.3392%;top:63.1434%;width:74.8129%;height:10.0206%}
#reg-submit{left:18.3292%;top:78.1057%;width:63.3416%;height:12.2855%}
#card #reg-form-screen #reg-form-back{left:40%;top:91.5%;width:20%;height:6%}
#presenter-video{position:absolute;left:10.84%;top:0;width:78.32%;height:94.8568%;object-fit:contain;background:#031127;pointer-events:auto}
#presenter-video[hidden]{display:none}
#card:not([data-page="presenter"]) #presenter-video{display:none}
#card[data-page="passport"] .front #level-states{display:block}

#completion-placeholder{display:none;position:absolute;left:10.84%;top:0;width:78.32%;height:94.8568%;place-items:center;color:#fff;font:500 20px "Source Han Sans TC","Noto Sans TC",sans-serif;pointer-events:none}
#card[data-page="passport"] #completion-placeholder{display:grid}

/* Intro uses only its dedicated GIF button; no full-card hit area. */
#card[data-page="briefing"] #briefing-start{left:25.1954%;top:52.0833%;width:49.6092%;height:11.6536%;padding:0;border:0;background:transparent;touch-action:manipulation;cursor:pointer}
#briefing-start img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
#briefing-start:focus-visible{outline:3px solid #00c8ff;outline-offset:3px;border-radius:18px}

/* Temporary review navigation in the upper and lower background strips. */
.review-page-zone{position:absolute;left:0;width:100%;height:13%;z-index:1;padding:0;border:0;background:transparent;box-shadow:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}
#review-prev-card{top:0}
#review-next-card{bottom:0}
.review-page-zone:disabled{cursor:default;pointer-events:none}
.review-page-zone:focus-visible{outline:2px dashed rgba(255,255,255,.65);outline-offset:-4px}
#stage #card{z-index:2}

/* Form actions match the supplied layout: back on the left, submit on the right.
   Submit art includes transparent margins; align its visible outline with back. */
#card[data-page="briefing"] #reg-submit{left:31.1721%;top:79.1352%;width:61.3466%;height:11.8980%}
#card[data-page="briefing"] #reg-form-screen #reg-form-back{left:11.3466%;top:81.6747%;width:22.5686%;height:6.9321%}

/* Shared frame for the inactive PNG and completed Animate button. */
#card #level-states #complete-dark,#card #level-states #complete-light{position:absolute;left:18.3292%;top:86.3418%;width:63.3416%;height:12.2855%;object-fit:contain;pointer-events:none}
#card #level-states #complete-light[hidden],#card #level-states #complete-dark[hidden]{display:none}
#card[data-page="passport"] #complete-action{left:25.1954%;top:81.9024%;width:49.6092%;height:11.6536%}
#card #level-states #scan-dark{display:none}
#card #level-states img[data-level="1"]{left:9.9751%;top:22.6493%;width:79.9252%;height:12.0796%;clip-path:none;transform:none;object-fit:contain}
#card #level-states img[data-level="2"]{left:9.9751%;top:35.6211%;width:79.9252%;height:12.0796%;clip-path:none;transform:none;object-fit:contain}
#card #level-states img[data-level="3"]{left:9.9751%;top:48.5244%;width:79.9252%;height:12.0796%;clip-path:none;transform:none;object-fit:contain}
#card #level-states img[data-level="4"]{left:9.9751%;top:61.4962%;width:79.9252%;height:12.0796%;clip-path:none;transform:none;object-fit:contain}
#card #level-states img[data-level="5"]{left:9.9751%;top:74.4681%;width:79.9252%;height:12.0796%;clip-path:none;transform:none;object-fit:contain}
/* Each mission row is a scan target, including after all five are complete. */
#card[data-page="passport"] #scan-qr{left:18.6525%;top:21.4844%;width:62.5974%;height:60.6120%;pointer-events:auto}

#card[data-page="passport"] .back #back-image{height:89.3229%}
#completion-gift{display:none;position:absolute;left:31.25%;top:70.638%;width:11.72%;height:7.8125%;padding:0;border:0;background:transparent;touch-action:manipulation;cursor:pointer;pointer-events:none}
#card[data-page="passport"] #completion-gift{display:block}
#card[data-page="passport"] #passport-back{left:56.64%;top:70.638%;width:11.72%;height:7.8125%;padding:0}
#completion-gift:focus-visible{outline:3px solid white;outline-offset:3px}
/* Temporarily hide completion-page navigation and its invisible hit areas. */
#card[data-page="passport"] #completion-gift,#card[data-page="passport"] #passport-back{display:none!important;pointer-events:none!important}
