#briefing-start{display:none;position:absolute;left:35%;top:55%;width:48%;height:15%;border:0;background:transparent;pointer-events:auto;cursor:pointer}
#card[data-page="briefing"] #briefing-start{display:block}
#card[data-page="briefing"] #front-fallback,#card[data-page="briefing"] .back #back-image{position:absolute;left:10.84%;top:0;width:78.32%;height:94.86%;object-fit:contain;visibility:visible!important}
#card[data-page="briefing"] #front-canvas,#card[data-page="briefing"] #accept-invitation,#card[data-page="briefing"] #view-passport,#card[data-page="briefing"] #corner-animation,#card[data-page="briefing"] #activity-rules{display:none}
.reg-overlay{position:fixed;inset:0;z-index:105;display:flex;flex-direction:column;align-items:center;overflow:auto;padding:12px 0 max(16px,env(safe-area-inset-bottom));color:white;font-family:"Source Han Sans TC","Noto Sans TC",sans-serif;touch-action:pan-y;overscroll-behavior:contain;background:transparent}
.reg-overlay[hidden],.reg-overlay [hidden]{display:none!important}
.reg-art{position:relative;flex:none;width:min(94vw,440px,51.5dvh);aspect-ratio:802/1457;background:url('registration-form-1021.png') center/100% 100%;container-type:inline-size}
.reg-field{position:absolute;border:0;outline:0;color:white;background:#06213a;font:500 max(16px,4.3cqw)/1.4 "Source Han Sans TC","Noto Sans TC",sans-serif;border-radius:8px;padding:0 6px;min-width:0;touch-action:auto}
.reg-field:focus{box-shadow:0 0 0 2px #03c5fa;background:#0c3551}
.reg-field::placeholder{color:#b1b8c4;opacity:1}
#reg-name{left:31.6%;top:25.1%;width:42%;height:4.9%}
#reg-title{left:31.6%;top:33.3%;width:58.8%;height:4.8%}
#reg-department{left:31.6%;top:41.5%;width:51.6%;height:4.8%}
#reg-line{left:32.1%;top:49.3%;width:51.2%;height:4.8%}
#reg-email{left:15.6%;top:59.2%;width:68%;height:13.1%;padding-top:8px;align-content:start}
#reg-submit{position:absolute;left:22.2%;top:74.4%;width:58%;height:8.6%;border:0;border-radius:40px;background:transparent;color:transparent;cursor:pointer}
#reg-submit:focus-visible{outline:3px solid #00d1ff}
.reg-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:min(94vw,440px);padding-top:10px}
.reg-button{font:500 16px "Source Han Sans TC","Noto Sans TC",sans-serif;min-height:44px;padding:10px 20px;border:1px solid #7fc9ec;border-radius:28px;color:white;background:#073756;cursor:pointer;touch-action:manipulation}
.reg-button.primary{background:#00bce9;color:#00223a;border:0;font-weight:700}
.reg-button:disabled{opacity:.5;cursor:wait}
.reg-photo-button{padding:0;border:0;background:transparent;cursor:pointer;max-width:210px;width:58%}
.reg-photo-button img{display:block;width:100%}
.reg-note{width:min(88vw,420px);font-size:14px;text-align:center;line-height:1.6;margin:10px 0 0}
.reg-status{width:min(88vw,420px);text-align:center;line-height:1.6;color:#fff3a0;background:#06233bd9;border-radius:12px;padding:8px;font-size:14px}
.reg-status:empty{display:none}
#reg-camera{background:#031127ec;z-index:106;justify-content:center}
.reg-camera-shell{position:relative;width:min(96vw,540px,84dvh);aspect-ratio:991/1109}
#reg-video{position:absolute;left:5.1%;top:7.9%;width:89.4%;height:66.8%;object-fit:cover;background:#09121b}
.reg-camera-shell>img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.reg-hotspot{position:absolute;border:0;background:transparent;cursor:pointer;touch-action:manipulation}
#reg-camera-close{right:0;top:0;width:10%;height:9%;min-width:44px;min-height:44px}
#reg-shutter{left:41%;top:76%;width:17%;height:16%}
#reg-photo-preview{display:block;max-width:min(88vw,440px);max-height:48dvh;object-fit:contain;border-radius:12px;margin-top:16px}
#reg-review{background:#031127ed;z-index:107;padding:22px 16px}
#reg-review h2{margin:0;font-size:23px}
#reg-review-fields{display:grid;gap:10px;width:min(90vw,440px);margin:16px 0}
#reg-review-fields label{display:grid;grid-template-columns:70px 1fr;align-items:center;font-size:15px}
#reg-review-fields input{width:100%;min-width:0;background:#0b334e;color:white;border:1px solid #94d4e9;border-radius:9px;font:16px "Source Han Sans TC","Noto Sans TC",sans-serif;padding:10px}
#reg-form-screen{padding-top:max(10px,env(safe-area-inset-top))}
@media(max-height:600px){.reg-art{width:min(90vw,390px)}.reg-overlay{justify-content:flex-start}}
/* The supplied form artwork lives on the original card's back face. */
#card #reg-form-screen{position:absolute;left:10.84%;top:0;width:78.32%;height:94.86%;inset:auto;left:10.84%;top:0;z-index:2;display:block;overflow:visible;padding:0;background:transparent;pointer-events:auto;touch-action:auto}
#card #reg-form-screen .reg-art{width:100%;height:100%;aspect-ratio:802/1457;margin:0;background:none}
#card #reg-form-screen .reg-actions{position:absolute;top:84%;left:5%;width:90%;padding:0;gap:6px;align-items:center}
#card #reg-form-screen .reg-photo-button{width:63%;max-width:none}
#card #reg-form-screen .reg-photo-button img{position:static;width:100%;height:auto;object-fit:contain}
#card #reg-form-back{min-height:32px;padding:4px 10px;font-size:13px}
#card #reg-form-screen .reg-note{position:absolute;left:8%;top:91%;width:84%;margin:0;font-size:10px;line-height:1.35}
#card #reg-form-status{position:absolute;left:5%;top:97%;width:90%;font-size:12px}
/* Keep the photo-button width; center it directly below the submit artwork. */
#card #reg-form-screen .reg-actions{top:84.5%;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start}
#card #reg-form-screen .reg-photo-button{flex:none;width:63%}
#card #reg-form-screen .reg-note{top:100%}
#reg-review-card{display:flex;flex-direction:column;align-items:center;width:min(92vw,460px);transform-style:preserve-3d}
#reg-review.photo-only{justify-content:center;perspective:900px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}
#reg-review.photo-only h2,#reg-review.photo-only #reg-review-hint,#reg-review.photo-only #reg-review-fields{display:none}
#reg-review.photo-only #reg-photo-preview{width:auto;max-width:100%;max-height:calc(100dvh - 200px);margin:0 0 16px;flex-shrink:1;object-fit:contain}
#reg-review.photo-only #reg-review-form{width:100%}
#reg-review.photo-only .reg-actions{width:100%;padding-top:0}
#reg-review.photo-only .reg-status{max-width:100%;margin-bottom:0}

/* Match the supplied 802 x 1457 reference, using each PNG at its design size. */
#card #reg-form-screen{container-type:inline-size}
#card #reg-form-screen .reg-actions{inset:0;width:100%;height:100%;display:block;padding:0;pointer-events:none}
#card #reg-form-screen #reg-take-card{position:absolute;left:47.0075%;top:85.9986%;width:44.5137%;height:7.4811%;margin:0;padding:0;pointer-events:auto}
#card #reg-form-screen #reg-form-back{position:absolute;left:11.2219%;top:86.136%;width:24.3142%;height:7.4811%;min-height:0;margin:0;padding:0;background:transparent;border:0;border-radius:0;pointer-events:auto}
#card #reg-form-screen #reg-form-back img,#card #reg-form-screen #reg-take-card img{position:static;display:block;width:100%;height:100%;object-fit:contain;filter:none}
#card #reg-form-screen .reg-note{left:10%;top:95.6%;width:82%;font-size:3.05cqw;line-height:1.4;white-space:nowrap}
/* Updated form has its privacy notice in the supplied artwork. */
#card #reg-form-screen .reg-note{display:none}
#reg-review.photo-only{background:transparent;padding:0;overflow:visible}
#reg-review.photo-only #reg-review-card{position:relative;display:block;flex:none;width:min(82.1445vw,453.9395px,59.087dvh,54dvh);aspect-ratio:802/1457;background:url('registration-photo-review.png') center/100% 100% no-repeat}
#reg-review.photo-only #reg-photo-preview{position:absolute;left:4.9%;top:30.5%;width:90.3%;height:30%;max-width:none;max-height:none;margin:0;border-radius:6px;object-fit:contain}
#reg-review.photo-only #reg-review-form,#reg-review.photo-only .reg-actions{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;display:block;pointer-events:none}
#reg-review.photo-only .reg-button{position:absolute;min-height:0;padding:0;margin:0;border:0;border-radius:0;background:transparent;pointer-events:auto}
#reg-review.photo-only .reg-button img{display:block;width:100%;height:100%;object-fit:contain}
#reg-review.photo-only #reg-review-back{left:4.49%;top:62.59%;width:35.54%;height:7.48%}
#reg-review.photo-only #reg-retake{left:59.1%;top:62.59%;width:37.03%;height:7.48%}
#reg-review.photo-only #reg-send{left:24.56%;top:80.92%;width:50.87%;height:7.48%}
#reg-review.photo-only #reg-send-status{position:absolute;left:5%;top:90%;width:90%;margin:0;font-size:12px}

/* Full-size 1024 × 1536 artwork; inputs and GIF use the same coordinate space. */
#card[data-page="briefing"] .back #back-image{left:0;top:0;width:100%;height:100%;object-fit:contain}
#card #reg-form-screen{left:0;top:0;width:100%;height:100%}
#card #reg-form-screen .reg-art{aspect-ratio:2/3}
#card #reg-form-screen .reg-field{background:transparent;border-radius:999px;padding:0 12px;font-size:max(16px,3.8cqw)}
#card #reg-form-screen .reg-field:focus{background:#06213aa6}
#reg-name{left:36.9141%;top:28.8411%;width:44.1406%;height:4.1667%}
#reg-title{left:36.9141%;top:36.3281%;width:44.1406%;height:4.1667%}
#reg-department{left:36.9141%;top:44.0104%;width:44.1406%;height:4.1667%}
#reg-line{left:36.9141%;top:52.0182%;width:44.1406%;height:4.1667%}
#reg-email{left:22.0703%;top:63.2813%;width:58.5938%;height:9.5052%;padding-top:0}
#card #reg-form-screen #reg-email{border-radius:0 28px 0 28px}
#reg-submit{left:25.1953%;top:77.4740%;width:49.6094%;height:11.6536%;padding:0;border-radius:0;touch-action:manipulation}
#card #reg-submit img{position:static;display:block;width:100%;height:100%;object-fit:contain;filter:none}
#card #reg-form-screen #reg-take-card{display:none!important}
#card #reg-form-screen #reg-form-back{left:40%;top:91%;width:20%;height:6%}
#card #reg-form-status{top:97%;left:10%;width:80%}

#reg-submit:disabled{opacity:1;cursor:default}
