/* V3.1.1: scoped registration module. Approved V3.1 layout is unchanged. */
.registration-block{margin-top:56px;border-top:1px solid var(--line);padding-top:46px;scroll-margin-top:28px}
.registration-intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start;margin-bottom:30px}
.registration-intro h3{font:400 clamp(28px,2.5vw,40px)/1.15 var(--serif);letter-spacing:-.035em;margin:0 0 17px}
.registration-intro h3 em{font-weight:400;color:#8b754f}
.registration-intro .eyebrow{margin-bottom:17px}
.registration-intro p{font-size:13px;line-height:1.85}
.registration-intro .registration-japanese{font-size:13px;color:var(--ink);margin:0;letter-spacing:.09em}
.registration-intro .registration-caution{font-size:11px;border-left:2px solid var(--gold);padding-left:15px;margin-bottom:0}
.registration-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.registration-card{min-width:0}
.registration-open{display:flex;justify-content:center;align-items:center;padding:23px;background:#eeeae1;border:1px solid var(--line);width:100%;min-width:0;transition:border-color .2s}
.registration-open:hover{border-color:#8b754f}
.registration-open img{display:block;width:auto!important;max-width:100%;height:auto!important;max-height:590px;object-fit:contain;box-shadow:0 8px 20px #0b1d2a15;visibility:visible;opacity:1}
.registration-card figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0 12px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}
.registration-card figcaption strong{display:block;color:#8b754f;font-size:9px;letter-spacing:.1em;margin-bottom:5px}
.registration-card figcaption>a{white-space:nowrap;color:var(--ink);font-weight:600;font-size:11px}
.registration-card figcaption>a>span{margin-left:8px;font-size:18px;font-weight:400}
.registration-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:23px}
.registration-bottom>span{font-size:10px;color:var(--muted)}
.registration-bottom .text-link{font-size:11px}
.verification-panel .registration-jump{background:var(--navy);color:var(--paper);border-color:var(--navy);margin-bottom:0}
.registration-viewer{width:min(1100px,96vw);max-width:96vw;max-height:94vh;max-height:94svh;padding:0;border:1px solid #ffffff30;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}
.registration-viewer:not([open]){display:none}
.registration-viewer::backdrop{background:#07151fe6}
.registration-viewer-head{display:flex;justify-content:space-between;gap:20px;padding:19px 24px;align-items:center;background:var(--navy);color:var(--paper)}
.registration-viewer-head>div>span{font-size:9px;letter-spacing:.13em;color:var(--gold-light)}
.registration-viewer-head h2{font-size:27px;line-height:1.2;margin:5px 0 0;letter-spacing:-.03em}
.registration-close{flex:0 0 42px;height:42px;background:transparent;border:1px solid #ffffff45;color:var(--paper);font-size:26px;line-height:1}
.registration-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 24px;border-bottom:1px solid var(--line)}
.registration-toolbar>button{font-size:12px;min-height:38px;padding:7px 12px;border:1px solid var(--line);background:transparent;color:var(--ink)}
.registration-toolbar>button:disabled{opacity:.35;cursor:default}
.registration-toolbar>span{font-size:11px;white-space:nowrap}
.registration-stage{padding:25px;max-height:65vh;max-height:65svh;overflow:auto;overscroll-behavior:contain;background:var(--sand)}
.registration-stage img{display:block;width:min(100%,740px);height:auto;margin:0 auto;background:white;box-shadow:0 6px 24px #0b1d2a20}
.registration-viewer-foot{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.registration-viewer-foot p{font-size:10px;line-height:1.6;margin:0;max-width:630px}
.registration-viewer-foot>a{font-size:11px;white-space:nowrap}
body.registration-open-page{overflow:hidden}
@media(max-width:700px){.registration-block{margin-top:35px;padding-top:30px}.registration-intro{grid-template-columns:1fr;gap:24px}.registration-intro h3{font-size:33px}.registration-intro p{font-size:12px}.registration-grid{grid-template-columns:1fr;gap:27px}.registration-open{padding:16px}.registration-open img{width:100%!important;max-height:none}.registration-bottom{flex-direction:column;align-items:flex-start;gap:14px}.registration-viewer-head{padding:15px}.registration-viewer-head h2{font-size:23px}.registration-viewer-head>div>span{font-size:8px}.registration-toolbar{padding:10px 13px;gap:8px}.registration-toolbar>button{padding:7px 8px;font-size:11px}.registration-toolbar>span{font-size:10px}.registration-stage{padding:12px}.registration-viewer-foot{padding:14px 15px;flex-direction:column;align-items:flex-start;gap:10px}.registration-viewer-foot p{font-size:9px}}
@media print{.registration-viewer{display:none!important}.registration-grid{grid-template-columns:1fr 1fr}.registration-open{padding:10px}.registration-open img{max-height:420px}.registration-card{break-inside:avoid}}
