#workersPanel.registration-ready > :not(#astraRegistration){display:none!important}
#workersPanel.registration-ready{background:#071d34 url('/astra-worker-cockpit-frame.png') center top/cover!important;padding:28px!important;border-radius:28px;color:#eff8ff}
#astraRegistration{max-width:1600px;margin:auto;font-size:16px;color:#eff8ff}
#astraRegistration *{box-sizing:border-box}#astraRegistration [hidden]{display:none!important}
#astraRegistration h2{font-size:30px;margin:4px 0;color:#fff}#astraRegistration h3{font-size:20px;margin:0 0 18px;color:#fff}
#astraRegistration small{font-size:14px;color:#a9cedf}#astraRegistration button,#astraRegistration input,#astraRegistration select{font:inherit}
#astraRegistration button{cursor:pointer;border:1px solid #6b9cac;border-radius:16px;padding:11px 18px;background:#16334bea;color:#fff;min-height:44px}
#astraRegistration button:hover{background:#21556a;border-color:#8ee6eb}#astraRegistration :focus-visible{outline:3px solid #8fe9fa;outline-offset:3px}
.reg-head,.reg-work-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.reg-head{padding:8px 18px}.reg-head small{letter-spacing:.16em}
.reg-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px}.reg-directory,.reg-workspace{background:linear-gradient(130deg,#092940ed,#081829dc);border:1px solid #78a6b56b;box-shadow:0 16px 40px #0004,inset 0 1px #d9eced55;border-radius:30px;padding:24px;min-width:0;backdrop-filter:blur(9px)}
#astraRegistration input,#astraRegistration select{width:100%;min-width:0;min-height:48px;background:#061a2bcb;color:#fff;border:1px solid #7393a9;border-radius:12px;padding:10px 12px}#astraRegistration input::placeholder{color:#a5bdcf}
#astraRegistration label{display:grid;gap:8px;font-size:15px;color:#d3e4ef}.reg-directory label{margin-bottom:10px}#regCount{font-size:14px;color:#afccd9}
#regPeople{display:grid;gap:10px;max-height:740px;overflow:auto}#astraRegistration .reg-person{text-align:left;display:grid;gap:7px;padding:16px;width:100%;background:#173b505c;border-color:#5f8fa055}.reg-person strong{font-size:19px}.reg-person span{font-size:14px;color:#d0dfe7}.reg-person small{font-size:13px!important}#astraRegistration .reg-person.selected{border-color:#8be8ed;background:#21576c99}
.reg-work-head small{display:block;margin-bottom:8px}.reg-work-head h3{font-size:25px;margin:0}#regDocCount{color:#a9e4e8;white-space:nowrap}.reg-entry{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(300px,1.2fr);gap:28px}.reg-documents{min-width:0}.reg-details{min-width:0}
#astraRegistration .reg-drop{border:1px dashed #83c9d7;background:linear-gradient(135deg,#12516488,#13355388);border-radius:26px;padding:38px 15px;text-align:center;font-size:20px;cursor:pointer}.reg-drop span{font-size:14px;color:#c0dbe5}.reg-drop.dragging{box-shadow:0 0 20px #69efff!important}.reg-help{font-size:14px;color:#b7cddb;line-height:1.6}
#regDocuments{display:grid;gap:12px;max-height:470px;overflow:auto}.reg-document{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:12px;background:#03142188;border-radius:18px}.reg-document img{width:110px;height:90px;object-fit:contain;cursor:zoom-in}.reg-document small{display:block;overflow-wrap:anywhere;margin:6px 0}.reg-document button{padding:4px 12px!important;min-height:32px!important;font-size:14px!important}.reg-pdf{padding:30px;color:#d7c98e}.reg-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.reg-wide{grid-column:1/-1}.reg-details details{margin-top:22px}.reg-details summary{cursor:pointer;padding:16px 0;color:#b7e4ef}.reg-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;border-top:1px solid #6693a655;padding-top:20px}.reg-actions span{margin-right:auto;font-size:13px;color:#b0c5d2}#astraRegistration .reg-primary{background:linear-gradient(130deg,#b8eae8,#dfd2a9);color:#092c3d;border:0;font-weight:700}.reg-summary{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:16px 20px;background:#29617855;border-radius:18px;margin-bottom:24px}.reg-summary strong{font-size:24px}.reg-summary span{font-size:15px}#regFeedback{min-height:24px;color:#ffe2a2;line-height:1.6}.reg-viewer{background:#061a2b;border:1px solid #90c8d7;border-radius:24px;max-width:90vw;color:#fff}.reg-viewer img{display:block;max-height:78vh;max-width:85vw}.reg-viewer button{padding:10px 20px;margin-bottom:12px}.reg-viewer::backdrop{background:#000b}.reg-saved .reg-workspace{animation:regSuccess .8s ease-out}@keyframes regSuccess{50%{box-shadow:0 0 30px #8bdedc88}}
@media(max-width:1100px){.reg-layout{grid-template-columns:240px minmax(0,1fr)}.reg-entry{grid-template-columns:1fr}.reg-documents{border-bottom:1px solid #6693a655;padding-bottom:18px}#regDocuments{max-height:260px;grid-template-columns:1fr 1fr}}
@media(max-width:760px){#workersPanel.registration-ready{padding:12px!important}.reg-layout{grid-template-columns:1fr}.reg-directory,.reg-workspace{padding:18px}#regPeople{max-height:200px}.reg-fields{grid-template-columns:1fr}.reg-head{padding:8px}.reg-work-head{align-items:start}.reg-work-head h3{font-size:21px}#regDocuments{grid-template-columns:1fr}.reg-actions button{flex:1 1 45%}.reg-actions span{width:100%}.reg-entry{gap:20px}}
@media(prefers-reduced-motion:reduce){.reg-saved .reg-workspace{animation:none}}

#regReadIdentity{width:100%;margin-top:16px;min-height:48px;font-size:16px}.reg-viewer #regReadFields{display:grid;gap:14px;min-width:min(420px,75vw)}#regReadFields label{display:grid;gap:6px;font-size:16px}#regReadFields input{box-sizing:border-box;width:100%;padding:12px;font-size:16px;background:#fff;color:#102536;border:1px solid #90c8d7;border-radius:8px}.reg-viewer p{max-width:520px;line-height:1.6}
/* Phase 1 registration: the existing directory keeps its original styles. */
#astraRegistration .reg-head [data-reg-new]{display:flex;align-items:center;gap:12px;border-radius:24px 10px 24px 10px;background:linear-gradient(115deg,#183a54,#27637a);border:1px solid #8ad9e6;padding:4px 18px 4px 5px;box-shadow:0 0 22px #6bcbd322;font-size:18px;font-weight:700}
.reg-officer{width:64px;height:66px;object-fit:cover;object-position:50% 20%;border-radius:18px}.reg-entry{grid-template-columns:minmax(320px,1fr) minmax(320px,1.12fr);gap:24px}.reg-workspace{background:linear-gradient(135deg,#153f58f5,#0b1d33f5)}.reg-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:#e4f6ff;font-weight:600}#astraRegistration .reg-replace{display:block;font-size:14px;cursor:pointer;color:#b6ecf4;border-bottom:1px solid #72c8d7;padding:5px 0}.reg-photo-stage{height:300px;position:relative;overflow:hidden;border:1px solid #8db4c9;border-radius:22px;background:radial-gradient(ellipse at 50% 30%,#31516b,#071523);touch-action:none;cursor:grab;box-shadow:inset 0 1px 12px #0005}.reg-photo-stage:active{cursor:grabbing}#regPhoto{position:absolute;left:50%;top:50%;max-width:none;max-height:none;object-fit:contain;transform-origin:center;pointer-events:none}#regPhotoEmpty{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:20px;color:#e2eef6;text-align:center;padding:20px}#regPhotoEmpty small{font-size:14px}.reg-photo-tools{display:flex;align-items:center;gap:14px;margin-top:12px}#astraRegistration .reg-photo-tools select{width:126px;min-height:40px;font-size:14px}#astraRegistration .reg-photo-tools label{display:flex;align-items:center;gap:8px;font-size:14px;flex:1;white-space:nowrap}#astraRegistration .reg-photo-tools input{padding:0;min-height:36px;accent-color:#86d6e4;width:100%}.reg-info-label{display:flex;justify-content:space-between;font-size:14px;letter-spacing:.1em;color:#9ddbea;margin:0 0 16px}.reg-info-label span{letter-spacing:0;color:#d9eaf4}.reg-compact-fields{display:grid;gap:14px}.reg-compact-fields>div{min-width:0}.reg-name-line{display:grid;grid-template-columns:1fr 62px;gap:12px}#astraRegistration input[name=name]{font-size:28px;font-weight:700;min-height:60px;color:#fff}#astraRegistration select[name=credit]{font-size:16px;font-weight:700;padding:8px;align-self:center;min-height:38px;border-width:2px}#astraRegistration select[data-grade=A]{border-color:#54a8ff;color:#88c5ff}#astraRegistration select[data-grade=B]{border-color:#e8d34b;color:#fff18a}#astraRegistration select[data-grade=C]{border-color:#f49948;color:#ffb976}#astraRegistration select[data-grade=D]{border-color:#ff626c;color:#ff9ba2}#astraRegistration select[name=credit] option{background:#112e43;color:#fff}.reg-two{display:grid;grid-template-columns:1.1fr 1fr;gap:12px}.reg-address-line{grid-template-columns:1fr 130px}.reg-bank-line{display:grid;grid-template-columns:1fr .9fr 1.3fr;gap:10px}.reg-compact-fields input,.reg-compact-fields select{background:#061b2ac9!important;border-color:#6c91a9!important}.reg-private-note{font-size:14px;color:#aac1d2;margin-top:16px}.reg-internal-feature{display:block;color:#c82636!important;font-weight:700;font-size:14px;white-space:normal;overflow-wrap:anywhere}#regSavedNotice{color:#b5ebde;padding:16px;border:1px solid #63aeab;background:#174c4a66;border-radius:12px}.reg-actions{margin-top:8px}#astraRegistration #regSave{min-width:170px;font-size:18px}.reg-summary{margin-bottom:18px}#astraRegistration .reg-documents{border:0;padding:0}
@media(max-width:1200px){.reg-entry{grid-template-columns:1fr}.reg-photo-stage{height:320px;max-width:650px;margin:auto}.reg-photo-tools{max-width:650px;margin:12px auto}.reg-bank-line{grid-template-columns:1fr 1fr 1.4fr}}
@media(max-width:760px){.reg-photo-stage{height:260px}.reg-head [data-reg-new]{font-size:15px!important}.reg-officer{width:48px;height:54px}.reg-two{grid-template-columns:1fr}.reg-address-line{grid-template-columns:1fr}.reg-bank-line{grid-template-columns:1fr 1fr 1.3fr;gap:5px}#astraRegistration .reg-bank-line input,#astraRegistration .reg-bank-line select{padding:9px 6px;font-size:14px}.reg-photo-tools{gap:8px}#astraRegistration .reg-photo-tools select{width:110px}}
@media print{.reg-internal-feature,[data-internal-only]{display:none!important}}
/* Registration-only open command deck; recent registrations are untouched. */
#astraRegistration .reg-workspace{border:0;border-radius:0;box-shadow:none;background:linear-gradient(110deg,#081c31df,#102c43b8,transparent);backdrop-filter:none;padding:24px 20px}
#astraRegistration .reg-work-head{padding-bottom:18px;border-bottom:1px solid #93d9ed45}
#astraRegistration .reg-head [data-reg-new],#astraRegistration #regReadIdentity,#astraRegistration #regSave{display:flex;align-items:center;justify-content:center;gap:14px;background:transparent;border:0;box-shadow:none;border-radius:0;color:#e9faff;font-weight:700;text-shadow:0 2px 8px #000;transition:filter .18s,transform .18s}
#astraRegistration .reg-command-art,#astraRegistration #regReadIdentity::before,#astraRegistration #regSave::before{content:'';display:block;flex:none;width:68px;height:91px;background:url('/astra-confirmed-71747f3afb91649a.png') 0% center/400% 100% no-repeat;filter:drop-shadow(0 2px 8px #65cbff66);transition:transform .18s}
#astraRegistration #regReadIdentity::before{background-position:100% center}
#astraRegistration #regSave::before{width:52px;height:70px}
#astraRegistration .reg-head [data-reg-new]:hover,#astraRegistration #regReadIdentity:hover,#astraRegistration #regSave:hover{filter:brightness(1.2);transform:translateY(-3px)}
#astraRegistration #regReadIdentity:disabled,#astraRegistration #regSave:disabled{opacity:.55;cursor:wait;transform:none}
#astraRegistration #regReadIdentity{width:auto;min-width:160px;margin:4px auto;padding:0 20px;font-size:21px}
#astraRegistration .reg-actions{border:0;padding-top:0;margin-top:0}
#astraRegistration #regSave{min-width:160px;padding:0 12px;font-size:23px}
#astraRegistration .reg-photo-stage{border-radius:44px 16px 44px 16px;border-color:#9ddced80;background:radial-gradient(ellipse at 50% 40%,#274b62,#071523 85%);box-shadow:0 12px 28px #0005,inset 0 1px 1px #c6f0ff77}
#astraRegistration .reg-details{padding:0 4px 0 12px}
#astraRegistration .reg-compact-fields input,#astraRegistration .reg-compact-fields select{border:0;border-bottom:1px solid #8fbcd280!important;border-radius:0;background:linear-gradient(0deg,#071b3099,transparent)!important;padding-left:5px}
#astraRegistration .reg-compact-fields input:focus,#astraRegistration .reg-compact-fields select:focus{background:#123d52!important}
#astraRegistration .reg-compact-fields{gap:18px}
#astraRegistration .reg-info-label{color:#a7e6ef;padding-top:5px}
#astraRegistration #regRawDetails{border-top:1px solid #7298ab66;margin-top:12px;padding-top:10px;color:#c0e8f1}
#astraRegistration #regRawDetails summary{cursor:pointer;padding:8px 0}
#astraRegistration #regRawText{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;font:14px/1.7 monospace;background:#061522b8;padding:14px;border-radius:8px;user-select:text}
@media(max-width:760px){#astraRegistration .reg-workspace{padding:18px 6px}#astraRegistration .reg-details{padding:0}#astraRegistration .reg-command-art{width:48px;height:64px}#astraRegistration .reg-head [data-reg-new]{gap:6px;padding:0}#astraRegistration .reg-photo-stage{border-radius:28px 10px 28px 10px}}
@media(prefers-reduced-motion:reduce){#astraRegistration .reg-head [data-reg-new],#astraRegistration #regReadIdentity,#astraRegistration #regSave{transition:none;transform:none}}
@media print{#regRawDetails{display:none!important}}
/* Four original documents, scoped to the registration workspace. */
#astraRegistration .reg-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
#astraRegistration .reg-photo-slot{min-width:0}
#astraRegistration .reg-photo-slot .reg-card-top{margin-bottom:6px;gap:6px}
#astraRegistration .reg-photo-slot .reg-card-top label{display:flex;align-items:center;gap:7px;font-size:14px;cursor:pointer}
#astraRegistration .reg-photo-slot input[type=radio]{width:16px;min-height:16px;height:16px;margin:0;accent-color:#9ae7ef}
#astraRegistration [data-rotate]{border:0;background:transparent;box-shadow:none;padding:0;width:36px;min-height:36px;font-size:28px;color:#c4eff9}
#astraRegistration .reg-slot-stage{position:relative;height:188px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #8bb7c16b;border-radius:24px 8px;background:#061b2bac;cursor:pointer;touch-action:none}
#astraRegistration .is-reading .reg-slot-stage{border-color:#96e8ef;box-shadow:0 0 15px #67d6e92b}
#astraRegistration .reg-slot-stage canvas{display:block;width:auto;height:auto;max-width:100%;max-height:100%;pointer-events:none}
#astraRegistration .reg-slot-empty{text-align:center;color:#deedf8;font-size:18px}
#astraRegistration .reg-slot-empty small{display:block;margin-top:10px;font-size:12px;color:#a5c4d7}
#astraRegistration .reg-crop-box{position:absolute;border:2px solid #b9f6ff;background:#66cfff26;pointer-events:none}
#astraRegistration .reg-name-line{grid-template-columns:minmax(100px,.7fr) minmax(130px,1.3fr) 58px;gap:10px}
#astraRegistration input[name=name]{font-size:23px;min-height:50px}
#astraRegistration .reg-actions{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:30px;margin-top:10px}
#astraRegistration .reg-actions [data-reg-new],#astraRegistration .reg-actions #regReadIdentity,#astraRegistration .reg-actions #regSave{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:0 1 130px;width:auto;min-width:0;min-height:108px;margin:0;padding:0 8px;background:none;border:0;box-shadow:none;color:#e9faff;font-size:18px;font-weight:700;text-shadow:0 2px 8px #000;transition:transform .18s,filter .18s}
#astraRegistration .reg-actions [data-reg-new]::before,#astraRegistration .reg-actions #regReadIdentity::before,#astraRegistration .reg-actions #regSave::before{content:'';display:block;width:78px;height:92px;background:url('/astra-zerg-controls.png') 0% center/300% 100% no-repeat;filter:drop-shadow(0 2px 8px #65cbff66)}
#astraRegistration .reg-actions #regReadIdentity::before{background-position:50% center}
#astraRegistration .reg-actions #regSave::before{background-position:100% center}
#astraRegistration .reg-actions button:hover{transform:translateY(-3px);filter:brightness(1.15)}
#astraRegistration .reg-education{white-space:pre-wrap;font-size:14px;line-height:1.8;color:#c1eceb;border-top:1px solid #8fcecf55;padding-top:12px;margin-top:12px;overflow-wrap:anywhere}
@media(max-width:760px){#astraRegistration .reg-slot-stage{height:158px}#astraRegistration .reg-photo-grid{gap:12px 8px}#astraRegistration .reg-actions{gap:10px}#astraRegistration .reg-name-line{grid-template-columns:minmax(75px,.8fr) minmax(100px,1.2fr) 50px;gap:6px}#astraRegistration .reg-actions button{font-size:16px!important}#astraRegistration .reg-actions button::before{width:64px!important;height:76px!important}}
@media(prefers-reduced-motion:reduce){#astraRegistration .reg-actions button{transition:none!important;transform:none!important}}
/* One document at a time; original document handlers and storage remain intact. */
#astraRegistration{position:relative;isolation:isolate}
#astraRegistration .reg-photo-grid{display:block}
#astraRegistration .reg-entry{grid-template-columns:minmax(360px,1.2fr) minmax(310px,1fr);gap:28px}
#astraRegistration .reg-document-tabs{display:flex;align-items:center;gap:4px;margin:0 0 12px;border-bottom:1px solid #9ddbec66;overflow-x:auto;padding:0 0 8px}
#astraRegistration .reg-document-tabs button{flex:1;white-space:nowrap;padding:9px 7px;min-height:42px;border:0;border-radius:10px 10px 0 0;background:transparent;color:#b9d7e4;font-size:14px}
#astraRegistration .reg-document-tabs button[aria-selected=true]{background:linear-gradient(0deg,#7ed8e43b,transparent);color:#fff4cb;box-shadow:inset 0 -3px #99f0ed;font-weight:700}
#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{height:380px;min-height:300px;border-radius:28px 10px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 35%,#3b657a,#102a40);border:1px solid #b4e6eb9c;box-shadow:0 12px 28px #0003,inset 0 1px #d5fcff6b;overflow:hidden}
#astraRegistration .reg-other-stage img{display:block;max-width:100%;max-height:100%;object-fit:contain}
#astraRegistration #regOtherSelect{margin-bottom:8px}
#astraRegistration #regOtherLink{color:#cefcff;font-size:20px}
#astraRegistration .reg-photo-slot .reg-card-top input[type=radio]{display:none}
#astraRegistration .reg-photo-slot .reg-card-top{min-height:36px}
#astraRegistration .reg-actions{margin:12px 0 4px;gap:24px;justify-content:space-evenly}
#astraRegistration .reg-actions [data-reg-new],#astraRegistration .reg-actions #regReadIdentity,#astraRegistration .reg-actions #regSave{font-size:20px!important;color:#fff8d8;text-shadow:0 1px 4px #00151d,0 0 16px #80e8ff66;min-height:110px}
#astraRegistration .reg-actions [data-reg-new]::before,#astraRegistration .reg-actions #regReadIdentity::before,#astraRegistration .reg-actions #regSave::before{width:110px;height:76px;background-image:url('/astra-guardian-asset.webp');background-size:contain;background-position:center;filter:drop-shadow(0 0 8px #7feeff88);animation:regGuardianBreathe 4s ease-in-out infinite}
#astraRegistration .reg-actions #regReadIdentity::before{filter:hue-rotate(25deg) drop-shadow(0 0 9px #a5baffaa);animation-delay:-1.3s}
#astraRegistration .reg-actions #regSave::before{filter:hue-rotate(320deg) drop-shadow(0 0 9px #ffdc8daa);animation-delay:-2.6s}
#astraRegistration .reg-arrival{display:none;position:absolute;inset:-70px -15px 0;z-index:10;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 65% 30%,#7feeff22,transparent 65%)}
#astraRegistration .reg-guardian{position:absolute;top:0;left:25%;width:min(850px,76%);height:500px;object-fit:contain;filter:drop-shadow(0 0 30px #b4faffaa)}
#astraRegistration .reg-arrival-caption{position:absolute;top:38%;left:40%;font-size:17px;letter-spacing:.22em;color:#eaffff;text-shadow:0 0 14px #4ae8ff;opacity:0}
#astraRegistration.reg-entering .reg-arrival{display:block;animation:regArrivalFade 3.2s both}
#astraRegistration.reg-entering .reg-guardian{animation:regGuardianArrival 3.2s cubic-bezier(.22,.65,.25,1) both}
#astraRegistration.reg-entering .reg-workspace{transform-origin:50% 0;animation:regCockpitLanding 3.2s cubic-bezier(.2,.7,.25,1) both}
#astraRegistration.reg-entering .reg-arrival-caption{animation:regArrivalWords 3.2s both}
@keyframes regGuardianArrival{0%{opacity:0;transform:translate(45%,-65%) scale(.15) rotate(-14deg)}20%{opacity:1}43%{transform:translate(0,7%) scale(1.06) rotate(0)}62%{opacity:1;transform:translate(0,14%) scale(1)}100%{opacity:0;transform:translate(-70%,-75%) scale(.65) rotate(-12deg)}}
@keyframes regCockpitLanding{0%,12%{opacity:.1;transform:perspective(1000px) translateY(-110px) rotateX(22deg) scale(.72)}50%{opacity:.85;transform:perspective(1000px) translateY(10px) rotateX(5deg) scale(.95)}72%,100%{opacity:1;transform:perspective(1000px) translateY(0) rotateX(0) scale(1)}}
@keyframes regArrivalFade{0%,80%{opacity:1}100%{opacity:0}}
@keyframes regArrivalWords{0%,28%,85%,100%{opacity:0}40%,65%{opacity:1}}
@keyframes regGuardianBreathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(max-width:1200px){#astraRegistration .reg-entry{grid-template-columns:1fr}#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{height:360px}}
@media(max-width:760px){#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{height:280px;min-height:240px}#astraRegistration .reg-document-tabs button{font-size:12px;padding:8px 5px}#astraRegistration .reg-actions{gap:8px}#astraRegistration .reg-actions button::before{width:84px!important;height:64px!important}#astraRegistration .reg-guardian{left:0;width:100%;height:340px}#astraRegistration .reg-arrival-caption{left:15%;top:25%;font-size:13px}}
@media(prefers-reduced-motion:reduce){#astraRegistration .reg-arrival{display:none!important}#astraRegistration.reg-entering .reg-workspace,#astraRegistration .reg-actions button::before{animation:none!important;transform:none!important}}
@media print{#astraRegistration .reg-arrival{display:none!important}}
#astraRegistration .reg-photo-actions{display:flex;gap:8px}
#astraRegistration .reg-photo-actions button{min-height:34px;padding:5px 13px;border:1px solid #b1dee680;border-radius:999px;background:#244b63;color:#f0fcff;font-size:14px}
#astraRegistration .reg-photo-actions button:last-child{color:#ffdcbd;border-color:#deb99277}
#astraRegistration .reg-actions [data-reg-new]::before{animation-name:regCompanionLeft}
#astraRegistration .reg-actions #regReadIdentity::before{animation-name:regCompanionCenter}
#astraRegistration .reg-actions #regSave::before{animation-name:regCompanionRight}
#astraRegistration .reg-actions [data-reg-new]{transform:translateY(4px)}
#astraRegistration .reg-actions #regReadIdentity{transform:translateY(-4px)}
@keyframes regCompanionLeft{0%,100%{transform:translate(-3px,0) rotate(-5deg)}50%{transform:translate(2px,-7px) rotate(1deg)}}
@keyframes regCompanionCenter{0%,100%{transform:scale(1) translateY(0)}50%{transform:scale(1.08) translateY(-5px)}}
@keyframes regCompanionRight{0%,100%{transform:translate(3px,0) rotate(4deg)}50%{transform:translate(-2px,-7px) rotate(-2deg)}}
/* Compact ID presentation and three distinct mission companions. */
#astraRegistration .reg-entry{grid-template-columns:minmax(280px,10.7cm) minmax(300px,1fr);gap:32px}
#astraRegistration .reg-documents{width:100%;max-width:10.7cm;margin-inline:auto}
#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{width:100%;height:auto;min-height:0;aspect-ratio:1.586;border-radius:22px 8px}
#astraRegistration .reg-slot-stage canvas,#astraRegistration .reg-other-stage img{max-height:6.747cm}
#astraRegistration .reg-document-tabs{gap:0}
#astraRegistration .reg-document-tabs button{font-size:14px;padding:8px 5px}
#astraRegistration .reg-actions{min-height:188px;gap:0;align-items:center;margin:4px -6px 0}
#astraRegistration .reg-actions [data-reg-new],#astraRegistration .reg-actions #regReadIdentity,#astraRegistration .reg-actions #regSave{flex:1 1 0;min-width:0;padding:0;gap:2px;font-size:19px!important;background:none;color:#f7fcff;line-height:1.35}
#astraRegistration .reg-actions [data-reg-new]{transform:translateY(12px);color:#c3fff2}
#astraRegistration .reg-actions #regReadIdentity{transform:translateY(-10px);color:#dbd9ff}
#astraRegistration .reg-actions #regSave{transform:translateY(16px);color:#ffe6a5}
#astraRegistration .reg-actions [data-reg-new]::before,#astraRegistration .reg-actions #regReadIdentity::before,#astraRegistration .reg-actions #regSave::before{width:126px!important;height:132px!important;max-width:100%;background-image:url('/astra-action-creatures.webp');background-size:300% 100%;background-repeat:no-repeat;background-position:0% center;filter:drop-shadow(0 0 7px #90f6ec66);animation:regCompanionLeft 4s ease-in-out infinite}
#astraRegistration .reg-actions #regReadIdentity::before{background-position:50% center;filter:drop-shadow(0 0 8px #c9a2ff88);animation:regCompanionCenter 3.8s ease-in-out infinite}
#astraRegistration .reg-actions #regSave::before{background-position:100% center;filter:drop-shadow(0 0 8px #ffbd6266);animation:regCompanionRight 4.8s ease-in-out infinite}
#astraRegistration .reg-actions [data-reg-new].reg-activated::before{animation:regGuideClick .65s ease-out!important}
#astraRegistration .reg-actions #regReadIdentity.reg-activated::before{animation:regScanClick .65s ease-out!important}
#astraRegistration .reg-actions #regSave.reg-activated::before{animation:regSealClick .65s ease-out!important}
@keyframes regGuideClick{0%,100%{transform:translateY(0)}40%{transform:translateY(-18px) rotate(-8deg);filter:drop-shadow(0 0 17px #a2ffee)}}
@keyframes regScanClick{0%,100%{transform:scale(1)}35%{transform:scale(1.12);filter:brightness(1.25) drop-shadow(0 0 18px #c5abff)}65%{transform:scale(1.04) rotate(3deg)}}
@keyframes regSealClick{0%,100%{transform:scale(1)}30%{transform:translateY(-8px) scale(1.08)}65%{transform:scale(.98);filter:brightness(1.22) drop-shadow(0 0 22px #ffd681)}}
@media(max-width:1200px){#astraRegistration .reg-entry{grid-template-columns:1fr}#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{height:auto;min-height:0}}
@media(max-width:480px){#astraRegistration .reg-actions button::before{width:104px!important;height:110px!important}#astraRegistration .reg-actions button{font-size:17px!important}#astraRegistration .reg-actions{min-height:164px}}
@media(prefers-reduced-motion:reduce){#astraRegistration .reg-actions button::before,#astraRegistration .reg-actions button.reg-activated::before{animation:none!important;transform:none!important}}
#astraRegistration .reg-actions{min-height:222px}
#astraRegistration .reg-actions [data-reg-new]::before,#astraRegistration .reg-actions #regReadIdentity::before,#astraRegistration .reg-actions #regSave::before{height:168px!important}
@media(max-width:480px){#astraRegistration .reg-actions button::before{height:139px!important}#astraRegistration .reg-actions{min-height:192px}}
/* Two distinct companions occupy the space beneath the document. */
#astraRegistration .reg-documents{max-width:none}
#astraRegistration .reg-photo-grid,#astraRegistration .reg-document-tabs{max-width:10.7cm;margin-left:auto;margin-right:auto}
#astraRegistration .reg-actions{position:relative;isolation:isolate;min-height:300px;align-items:flex-start;justify-content:space-between;gap:32px;padding:8px 4px 0;background:radial-gradient(ellipse at 18% 42%,#3affd51b,transparent 38%),radial-gradient(ellipse at 85% 68%,#ff902520,transparent 43%)}
#astraRegistration .reg-actions [data-reg-new]{flex:0 1 42%;transform:translateY(0);align-self:flex-start;color:#cafff5}
#astraRegistration .reg-actions #regSave{flex:0 1 48%;transform:translateY(32px);align-self:flex-start;color:#ffe1a0}
#astraRegistration .reg-actions [data-reg-new]::before{width:144px!important;height:192px!important;filter:drop-shadow(0 0 13px #79ffe998);animation:regGuideDrift 5.5s ease-in-out infinite}
#astraRegistration .reg-actions #regSave::before{width:183px!important;height:244px!important;filter:drop-shadow(0 0 14px #ffa43b85);animation:regGuardianPulse 4s ease-in-out infinite}
#astraRegistration #regReadIdentity{width:auto;min-width:0;min-height:28px;margin:4px auto;padding:4px 10px;font-size:13px;display:block;color:#c5e9ff;border-bottom:1px solid #78bcda55;transform:none}
#astraRegistration #regReadIdentity[hidden]{display:none!important}
#astraRegistration #regReadIdentity::before{display:none!important;content:none}
@keyframes regGuideDrift{0%,100%{transform:translate(-5px,7px) rotate(-4deg)}50%{transform:translate(9px,-9px) rotate(3deg);filter:drop-shadow(0 0 19px #90ffeeaa)}}
@keyframes regGuardianPulse{0%,100%{transform:scale(.97) rotate(1deg)}50%{transform:translateY(-5px) scale(1.03) rotate(-1deg);filter:drop-shadow(0 0 22px #ffc963aa)}}
@media(max-width:480px){#astraRegistration .reg-actions{gap:18px;min-height:255px}#astraRegistration .reg-actions [data-reg-new]::before{width:117px!important;height:156px!important}#astraRegistration .reg-actions #regSave::before{width:144px!important;height:192px!important}}
@media(prefers-reduced-motion:reduce){#astraRegistration .reg-actions button::before{animation:none!important}}
/* Authored motion poses inhabit the deck; labels remain stable hit targets. */
#astraRegistration .reg-actions button::before{display:none!important;content:none!important}
#astraRegistration .reg-actions{min-height:300px;perspective:900px;overflow:visible;gap:36px}
#astraRegistration .reg-actions button{position:relative;isolation:isolate;transition:filter .25s;overflow:visible;cursor:pointer}
#astraRegistration .reg-actions [data-reg-new]{transform:none;align-self:flex-start}
#astraRegistration .reg-actions #regSave{transform:translateY(28px);align-self:flex-start}
#astraRegistration .reg-being{display:block;position:relative;width:190px;height:210px;max-width:100%;margin:0!important;pointer-events:none;transform-style:preserve-3d}
#astraRegistration .reg-seal{width:225px;height:238px}
#astraRegistration .reg-creature-canvas{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 12px #70ffe85c)}
#astraRegistration .reg-guide{animation:regGuideSpace 5.6s ease-in-out infinite}
#astraRegistration .reg-seal{animation:regSealSpace 4.2s ease-in-out infinite}
#astraRegistration .reg-seal canvas{filter:drop-shadow(0 0 14px #ffa73b77)}
#astraRegistration .reg-being::after{content:'';position:absolute;left:12%;right:12%;height:24px;bottom:-2px;z-index:-1;background:radial-gradient(ellipse,#88ffed77,transparent 70%);filter:blur(6px);transform:rotateX(50deg);animation:regDeckReflection 4s ease-in-out infinite}
#astraRegistration .reg-seal::after{background:radial-gradient(ellipse,#ffb94299,transparent 70%);animation-delay:-1.5s}
#astraRegistration .reg-actions button:hover .reg-creature-canvas,#astraRegistration .reg-actions button:focus-visible .reg-creature-canvas{filter:brightness(1.18) drop-shadow(0 0 17px #b4faff99)}
#astraRegistration .reg-actions button:focus-visible{outline:2px solid #bbf8ff;outline-offset:8px;border-radius:40%}
#astraRegistration .reg-actions [data-reg-new].reg-activated .reg-being{animation:regGuideDepart .65s ease-out both}
#astraRegistration .reg-actions #regSave.reg-activated .reg-being{animation:regSealConfirm .65s ease-out both}
#astraRegistration .reg-actions button::after{content:'';position:absolute;inset:25% 5%;border-radius:50%;border:1px solid #a8fff577;box-shadow:0 0 25px #7dffee55;opacity:0;pointer-events:none;z-index:-1}
#astraRegistration .reg-actions #regSave::after{border-color:#ffe2a9;box-shadow:0 0 35px #ffad4677}
#astraRegistration .reg-actions button.reg-activated::after{animation:regCommandWave .65s ease-out}
#astraRegistration .reg-photo-status{max-width:10.7cm;min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px auto;color:#b9e9f3;font-size:13px}
#astraRegistration #regReadIdentity{flex:none;width:32px;height:32px;min-height:32px;padding:0;margin:0;font-size:26px;line-height:1;border:1px solid #a3e8ef66;border-radius:50%;color:#d8ffff;cursor:pointer;background:#123747aa}
#astraRegistration #regReadIdentity:hover{background:#275b70;filter:brightness(1.15);transform:none}
#astraRegistration .reg-arrival{perspective:1100px;background:radial-gradient(ellipse at 67% 20%,#acdfff44,transparent 55%)}
#astraRegistration .reg-guardian{top:-30px;left:calc(50% - 320px);width:640px;height:640px;transform-origin:50% 55%;filter:drop-shadow(0 0 25px #9ddfffaa)}
#astraRegistration .reg-guardian canvas{filter:drop-shadow(0 0 18px #bcfaff88)}
#astraRegistration .reg-arrival-trail{position:absolute;top:12%;left:40%;width:60%;height:20%;background:radial-gradient(ellipse,#d7fcff88,#7eeaff22 35%,transparent 70%);filter:blur(14px);transform-origin:100% 0;opacity:0}
#astraRegistration .reg-landing-light{position:absolute;left:12%;right:12%;top:46%;height:80px;opacity:0;border-radius:50%;background:radial-gradient(ellipse,#e2ffffbb,#80dfff33 35%,transparent 70%);box-shadow:0 0 28px #a0ffff66;transform:rotateX(65deg)}
#astraRegistration.reg-entering .reg-arrival{animation:regSceneFade 3.8s both}
#astraRegistration.reg-entering .reg-guardian{animation:regLivingArrival 3.8s linear both}
#astraRegistration.reg-entering .reg-arrival-trail{animation:regFlightTrail 3.8s both}
#astraRegistration.reg-entering .reg-landing-light{animation:regLandingWave 3.8s both}
#astraRegistration.reg-entering .reg-workspace{animation:regDeckReveal 3.8s ease-out both}
#astraRegistration.reg-entering .reg-arrival-caption{animation:regArrivalWords 3.8s both}
@keyframes regGuideSpace{0%,100%{transform:translate3d(-4px,6px,0) rotate(-2deg)}50%{transform:translate3d(7px,-9px,35px) rotate(2deg)}}
@keyframes regSealSpace{0%,100%{transform:translateZ(0)}50%{transform:translate3d(-2px,-3px,16px)}}
@keyframes regDeckReflection{50%{opacity:.35;transform:rotateX(50deg) scale(.8)}}
@keyframes regGuideDepart{0%{transform:translateY(0)}45%{transform:translate(14px,-28px) rotate(7deg);filter:brightness(1.3) drop-shadow(-12px 20px 10px #6fffe888)}100%{transform:translate(0,0)}}
@keyframes regSealConfirm{35%{transform:translateY(7px) scale(1.05);filter:brightness(1.4) drop-shadow(0 0 20px #ffd785)}100%{transform:translateY(0)}}
@keyframes regCommandWave{0%{opacity:0;transform:scale(.6)}25%{opacity:.8}100%{opacity:0;transform:scale(1.65)}}
@keyframes regLivingArrival{0%{opacity:0;transform:translate3d(260px,-180px,-900px) scale(.12) rotate(-14deg)}12%{opacity:.6;transform:translate3d(230px,-155px,-600px) scale(.2) rotate(-10deg)}34%{opacity:1;transform:translate3d(70px,-40px,-100px) scale(.72) rotate(-4deg)}51%{transform:translate3d(0,12px,70px) scale(1.03) rotate(1deg)}65%{opacity:1;transform:translate3d(-12px,24px,0) scale(.97)}78%{opacity:1;transform:translate3d(-40px,-15px,40px) scale(1)}100%{opacity:0;transform:translate3d(-430px,-240px,220px) scale(1.2) rotate(-14deg)}}
@keyframes regSceneFade{0%,83%{opacity:1}100%{opacity:0}}
@keyframes regFlightTrail{0%,8%{opacity:0;transform:scale(.1) rotate(-24deg)}28%{opacity:.6;transform:scale(.65) rotate(-24deg)}48%{opacity:.85;transform:translate(-25%,55%) scale(1.3) rotate(-24deg)}65%,100%{opacity:0;transform:translate(-50%,80%) scale(1.8) rotate(-24deg)}}
@keyframes regLandingWave{0%,44%{opacity:0;transform:rotateX(65deg) scale(.2)}54%{opacity:.85;transform:rotateX(65deg) scale(.65)}75%,100%{opacity:0;transform:rotateX(65deg) scale(1.8)}}
@keyframes regDeckReveal{0%,24%{opacity:.2;transform:perspective(1100px) translateY(35px) rotateX(12deg) scale(.93)}58%{opacity:1;transform:perspective(1100px) translateY(3px) rotateX(1deg) scale(.997);filter:brightness(1.14)}78%,100%{opacity:1;transform:none;filter:none}}
@media(max-width:760px){#astraRegistration .reg-guardian{left:calc(50% - 230px);width:460px;height:460px;top:0}#astraRegistration .reg-actions{gap:24px}#astraRegistration .reg-being{width:150px;height:180px}#astraRegistration .reg-seal{width:175px;height:210px}}
@media(prefers-reduced-motion:reduce){#astraRegistration .reg-being,#astraRegistration .reg-being::after,#astraRegistration .reg-actions button.reg-activated .reg-being{animation:none!important;transform:none!important}#astraRegistration .reg-actions button::after{display:none}}
#astraRegistration .reg-actions button>span:last-child{margin:0;font-size:20px;line-height:1.4;color:inherit;font-weight:700}
/* Vivid fleet-derived bird and smaller, distinct companions. */
#astraRegistration .reg-actions{min-height:232px;gap:48px;background:radial-gradient(ellipse at 20% 50%,#20fcd326,transparent 40%),radial-gradient(ellipse at 85% 65%,#ffc92926,transparent 40%)}
#astraRegistration .reg-being{width:150px;height:166px}
#astraRegistration .reg-seal{width:166px;height:183px}
#astraRegistration .reg-creature-canvas{filter:saturate(1.12) brightness(1.12) drop-shadow(0 0 9px #58ffce70)}
#astraRegistration .reg-seal canvas{filter:saturate(1.14) brightness(1.12) drop-shadow(0 0 11px #ffb82d88)}
#astraRegistration .reg-guardian{filter:drop-shadow(0 0 20px #ff3565aa)}
#astraRegistration .reg-guardian canvas{filter:saturate(1.12) brightness(1.12) drop-shadow(0 0 12px #ff457088)}
#astraRegistration .reg-arrival-trail{background:radial-gradient(ellipse,#ffc5e0aa,#ff3d672e 35%,transparent 70%)}
#astraRegistration .reg-landing-light{background:radial-gradient(ellipse,#fff1e7cc,#ff416033 35%,transparent 70%);box-shadow:0 0 28px #ff688b66}
@media(max-width:760px){#astraRegistration .reg-actions{gap:24px;min-height:216px}#astraRegistration .reg-being{width:128px;height:148px}#astraRegistration .reg-seal{width:145px;height:164px}}
/* ASTRA crew deck: one material and lighting system for the working surface. */
#workersPanel.registration-ready{background:#071927 url('/astra-crew-bridge.webp') center top/cover!important;padding:32px clamp(16px,3vw,48px) 40px!important;border-radius:36px 12px 36px 12px;box-shadow:inset 0 1px 1px #d9fbff88,0 18px 45px #03122544;isolation:isolate}
#astraRegistration{position:relative;--deck-cyan:#8ef7ff;--deck-silver:#d4e7ed;--deck-gold:#eecb82;--deck-ink:#061927}
#astraRegistration .reg-head{padding:8px 12px 20px;margin-bottom:12px;align-items:flex-end;border-bottom:1px solid #9dc5d83d;text-shadow:0 2px 10px #00131f}
#astraRegistration .reg-head h2{font-size:32px;font-weight:650;letter-spacing:.02em}
#astraRegistration .reg-head small{color:#a7e9f1;font-size:12px;letter-spacing:.3em}
#astraRegistration .reg-workspace{position:relative;padding:24px 22px;background:linear-gradient(115deg,#092333e8,#081d2adc 65%,#152b38d9);border:1px solid #badbe64d;border-top:2px solid #e1f5f66b;border-radius:58px 16px 34px 16px;box-shadow:inset 0 1px 14px #72cbd117,inset 0 -8px 18px #030e1c66,0 16px 30px #0006;backdrop-filter:blur(7px)}
#astraRegistration .reg-workspace::before{content:'';position:absolute;left:48px;right:36px;top:-2px;height:2px;background:linear-gradient(90deg,transparent,#abf9ff,#e4d19e,transparent);box-shadow:0 0 14px #a0f0ff77;pointer-events:none}
#astraRegistration .reg-work-head{padding:0 4px 18px 12px;margin-bottom:22px;border-bottom:1px solid #b1d2db33}
#astraRegistration .reg-work-head small{color:#b5d5df;font-size:14px;letter-spacing:.1em}
#astraRegistration .reg-work-head h3{font-size:22px;font-weight:600;color:#f2fcff}
#astraRegistration .reg-entry{gap:28px;align-items:start}
#astraRegistration .reg-documents{position:relative}
#astraRegistration .reg-document-tabs{padding:2px 4px 6px;background:linear-gradient(0deg,#8bb0be13,transparent);border-bottom:1px solid #9cc2cc4d;border-radius:16px 4px 0 0;gap:2px}
#astraRegistration .reg-document-tabs button{border:0;background:transparent;color:#a8c8d6;min-height:38px;padding:7px 5px;border-radius:10px 3px 0 0;transition:color .18s,background .18s}
#astraRegistration .reg-document-tabs button[aria-selected=true]{color:#efffff;background:linear-gradient(0deg,#45d9e127,transparent);box-shadow:inset 0 -2px #9efaff;text-shadow:0 0 9px #a4faff66}
#astraRegistration .reg-card-top{margin:12px 0 9px;padding:0 4px;color:#dbedf4}
#astraRegistration .reg-photo-actions button{background:linear-gradient(#304d5a,#16303f);border:1px solid #a6c8d266;border-top-color:#d5f7ff88;border-radius:14px 4px;box-shadow:inset 0 1px #e1faff26,0 3px 7px #0004;padding:4px 12px}
#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{position:relative;border:3px solid #779ba9;border-top-color:#d5edf1;border-bottom-color:#304c5e;border-radius:26px 8px 26px 8px;background:radial-gradient(ellipse at 50% 45%,#173d4b,#041420 82%);box-shadow:0 0 0 1px #02101b,0 0 0 5px #48667545,inset 0 0 26px #53bfce1a,0 12px 22px #0007}
#astraRegistration .reg-slot-stage::after{content:'';position:absolute;left:14%;right:14%;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#9cfbff,transparent);box-shadow:0 0 14px #6beafc;pointer-events:none}
#astraRegistration .reg-slot-stage:focus-visible{outline:2px solid #abffff;outline-offset:7px}
#astraRegistration .reg-slot-empty{color:#d2e7ef;gap:12px}
#astraRegistration .reg-slot-empty small{color:#91b5c5}
#astraRegistration .reg-photo-status{padding:4px 2px;color:#a6d6df;min-height:42px}
#astraRegistration .reg-details{padding:18px 18px 22px;border-top:1px solid #bbdce67d;border-bottom:1px solid #82c2cf55;border-radius:24px 5px 32px 5px;background:linear-gradient(155deg,#1e3d4b8a,#061a2780);box-shadow:inset 0 1px 1px #d6f5ff17,0 16px 25px #0002}
#astraRegistration .reg-info-label{margin:0 0 20px;color:#a6f3f5;font-size:12px;letter-spacing:.18em;padding:0 2px 12px;border-bottom:1px solid #8eb8c344}
#astraRegistration .reg-info-label span{color:#dceaf1;font-size:15px}
#astraRegistration .reg-compact-fields{gap:13px}
#astraRegistration .reg-compact-fields input,#astraRegistration .reg-compact-fields select{min-height:50px;border:0!important;border-bottom:1px solid #739ead99!important;border-radius:8px 2px 0 0;background:linear-gradient(0deg,#061824bf,#102f3b55)!important;padding:10px;color:#effbff;box-shadow:inset 0 -1px #d5f9ff0d;transition:background .18s,border-color .18s}
#astraRegistration .reg-compact-fields input::placeholder{color:#afc9d4;opacity:1}
#astraRegistration .reg-compact-fields input:focus,#astraRegistration .reg-compact-fields select:focus{background:#133e4b!important;border-bottom-color:#affcff!important;outline:2px solid #8ce9f155;outline-offset:1px}
#astraRegistration input[name=name]{font-size:27px;min-height:60px;letter-spacing:.04em}
#astraRegistration select[name=credit]{min-height:34px;padding:6px;border-bottom-width:2px!important;background:#0b2433!important}
#astraRegistration .reg-private-note{font-size:13px;margin:18px 0 0;color:#9dbfc9}
#astraRegistration .reg-actions{margin:3px 0 0;min-height:222px;gap:40px;background:radial-gradient(ellipse at 20% 68%,#76f7ed22,transparent 32%),radial-gradient(ellipse at 82% 78%,#eaa64e26,transparent 35%);border-bottom:1px solid #81afb238;border-radius:0 0 45% 20%}
#astraRegistration .reg-actions button>span:last-child{font-size:18px;letter-spacing:.08em;text-shadow:0 2px 8px #001322,0 0 10px #6ef7ff33}
#astraRegistration .reg-being{width:144px;height:164px}
#astraRegistration .reg-seal{width:160px;height:180px}
#astraRegistration .reg-help{color:#a6c2cc;font-size:13px;line-height:1.6}
#astraRegistration #regReadIdentity{background:#092b39;border:1px solid #a9f4fc66;box-shadow:0 0 12px #6fedff1a;color:#c5ffff}
@media(max-width:1200px){#astraRegistration .reg-entry{grid-template-columns:1fr}#astraRegistration .reg-documents{max-width:10.7cm}#astraRegistration .reg-details{margin-top:8px}}
@media(max-width:760px){#workersPanel.registration-ready{padding:18px 12px!important;border-radius:20px}#astraRegistration .reg-workspace{padding:20px 12px;border-radius:30px 8px 26px 8px}#astraRegistration .reg-head h2{font-size:26px}#astraRegistration .reg-details{padding:15px 10px}#astraRegistration .reg-entry{gap:20px}#astraRegistration .reg-actions{gap:20px}#astraRegistration .reg-being{width:125px;height:150px}#astraRegistration .reg-seal{width:143px;height:166px}}
/* Clear observation glass: presentation only, original controls and handlers retained. */
#astraRegistration .reg-workspace{background:linear-gradient(115deg,#c8f5ff12,#06233318 65%,#b2e8ff0a);backdrop-filter:none;border-color:#c2f5ff80;border-top-color:#edffffcc;box-shadow:inset 0 1px 2px #efffff80,inset 0 -2px 3px #18475b88,0 0 0 1px #173a4c80,0 12px 28px #00142338}
#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{background:linear-gradient(135deg,#e2fbff18,#0730470d 42%,#d6f8ff0a);border:3px solid #79bbd0;border-top-color:#e7ffff;border-left-color:#b6eefa;border-bottom-color:#39758f;box-shadow:0 0 0 1px #163c51,0 0 0 5px #bdefff24,inset 0 2px 3px #ffffff88,inset 0 -3px 5px #12364b66,0 0 22px #73e8ff38,0 12px 20px #00111d40}
#astraRegistration .reg-slot-stage::after{left:8%;right:8%;height:3px;box-shadow:0 0 9px #a0ffff,0 0 22px #5de6ff88}
#astraRegistration .reg-details{background:linear-gradient(130deg,#ecffff16,#11394e12 50%,#d4f6ff0a);border:2px solid #90cfdf99;border-top-color:#e2ffffd9;border-left-color:#c0f1facc;border-bottom-color:#4f8ea6;border-radius:24px 5px 32px 5px;backdrop-filter:none;box-shadow:inset 0 2px 3px #ffffff66,inset 0 -2px 4px #12394e66,0 0 0 3px #b4f3ff16,0 0 24px #70e5ff24,0 12px 24px #00162433}
#astraRegistration .reg-compact-fields input,#astraRegistration .reg-compact-fields select{background:linear-gradient(0deg,#05263870,#d0f4ff10)!important;border-bottom-color:#b4edffc2!important;box-shadow:inset 0 1px #e1ffff20,0 1px 5px #08233322;text-shadow:0 1px 3px #001623,0 0 6px #00162399;color:#f5fdff}
#astraRegistration .reg-compact-fields input::placeholder{color:#e1f4fb;text-shadow:0 1px 4px #001522}
#astraRegistration .reg-compact-fields input:focus,#astraRegistration .reg-compact-fields select:focus{background:#0b354b80!important;border-bottom-color:#caffff!important;outline:2px solid #affaff88}
#astraRegistration .reg-compact-fields select option{background:#15394b;color:#f2fcff;text-shadow:none}
#astraRegistration .reg-work-head,#astraRegistration .reg-info-label,#astraRegistration .reg-slot-empty,#astraRegistration .reg-photo-status,#astraRegistration .reg-private-note,#astraRegistration .reg-help,#astraRegistration .reg-card-top{color:#e4f7ff;text-shadow:0 1px 4px #00111f,0 0 8px #00111f99}
#astraRegistration .reg-slot-empty small{color:#d4edf7}
/* Matched crew panels: hide only the directory UI, retain record logic. */
#astraRegistration .reg-directory{display:none!important}
#astraRegistration .reg-layout{display:block}
#astraRegistration .reg-workspace{width:calc(100% - 322px);margin-inline:auto;box-sizing:border-box}
#astraRegistration .reg-entry{align-items:stretch}
#astraRegistration .reg-documents,#astraRegistration .reg-details{align-self:stretch;height:auto;min-height:0;box-sizing:border-box;margin-top:0;margin-bottom:0;border:2px solid #568da6;border-top-color:#c4edf7;border-left-color:#8cc4d5;border-bottom-color:#305d78;border-radius:24px 5px 32px 5px;box-shadow:inset 0 1px 2px #ffffff77,inset 0 -2px 3px #12364b88,0 0 0 1px #12394d99,0 0 15px #70e5ff29,0 10px 20px #00162433}
#astraRegistration .reg-documents{padding:12px 10px}
#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{border-color:#568da6;border-top-color:#c4edf7;border-left-color:#8cc4d5;border-bottom-color:#305d78}
@media(max-width:1100px){#astraRegistration .reg-workspace{width:calc(100% - 262px)}}
@media(max-width:760px){#astraRegistration .reg-workspace{width:100%}}
@media(min-width:1201px){#astraRegistration .reg-documents{max-width:none}}
#astraRegistration .reg-recent{margin-top:24px;padding:20px;border:2px solid #568da699;border-top-color:#c4edf7b3;border-radius:24px 5px;background:linear-gradient(130deg,#ecffff16,#11394e12);box-shadow:inset 0 1px 2px #ffffff55,0 0 15px #70e5ff20;color:#effaff;text-shadow:0 1px 4px #00111f}
#astraRegistration .reg-recent h3{font-size:20px;margin:0 0 16px}
#astraRegistration .reg-recent-head,#astraRegistration .reg-recent-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(130px,1fr) minmax(130px,1fr);gap:12px;align-items:center;text-align:left;padding:12px 10px}
#astraRegistration .reg-recent-head{font-size:14px;color:#cdebf5;border-bottom:1px solid #b4edff80}
#astraRegistration .reg-recent-row{width:100%;border:0;border-bottom:1px solid #b4edff30;border-radius:0;background:transparent;color:#effaff;font-size:16px;text-shadow:0 1px 4px #00111f}
#astraRegistration .reg-recent-row:hover,#astraRegistration .reg-recent-row:focus-visible{background:#8ddfff20;outline:1px solid #b4edff80}
#astraRegistration #regRecentList{overflow:auto;max-height:340px}
@media(max-width:600px){#astraRegistration .reg-recent{padding:12px}#astraRegistration .reg-recent-head,#astraRegistration .reg-recent-row{grid-template-columns:1fr 1.2fr 1.3fr;gap:6px;font-size:14px;padding:10px 4px}}
/* Photo frame and profile share a single grid row; companion controls stay below. */
#astraRegistration .reg-documents{padding:0;border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;min-width:0}
#astraRegistration .reg-photo-grid{display:flex;flex-direction:column;flex:1;width:100%;margin-bottom:0}
#astraRegistration .reg-photo-slot:not([hidden]),#astraRegistration .reg-other-pane:not([hidden]){display:flex;flex-direction:column;flex:1;padding:0;margin:0}
#astraRegistration .reg-slot-stage,#astraRegistration .reg-other-stage{flex:1;min-height:255px;aspect-ratio:auto;box-sizing:border-box;margin-bottom:0}
#astraRegistration .reg-document-tabs{width:100%;padding-top:0;margin-top:0}
#astraRegistration .reg-card-top{margin-top:7px;margin-bottom:7px}
#astraRegistration .reg-photo-below{min-width:0}
#astraRegistration .reg-photo-actions{display:flex;gap:8px}
#astraRegistration .reg-photo-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:3px 10px;border:1px solid #82d8ef;border-top-color:#e0ffff;border-radius:10px 3px;background:linear-gradient(145deg,#bdefff38,#164c6370 55%,#0a2a4077);color:#ecfcff;font-size:14px;box-shadow:inset 0 1px 2px #efffff66,inset 0 -2px 2px #051c3b66,0 0 8px #76dfff22;transition:filter .12s,transform .12s}
#astraRegistration .reg-photo-actions button span:first-child{font-size:18px;line-height:1;color:#adf6ff;text-shadow:0 0 7px #7af1ff}
#astraRegistration .reg-photo-actions button:hover{filter:brightness(1.2)}
#astraRegistration .reg-photo-actions button:active{transform:translateY(1px);filter:brightness(1.4)}
#astraRegistration .reg-photo-actions button:focus-visible{outline:2px solid #c8ffff;outline-offset:3px}
@media(min-width:1201px){#astraRegistration .reg-documents{grid-column:1;grid-row:1}#astraRegistration .reg-details{grid-column:2;grid-row:1}#astraRegistration .reg-photo-below{grid-column:1;grid-row:2}#astraRegistration .reg-entry{row-gap:8px}}
@media(max-width:1200px){#astraRegistration .reg-documents{order:0}#astraRegistration .reg-photo-below{order:1}#astraRegistration .reg-details{order:2}}
/* Only the upper caption moves onto the bridge glass; lower panel geometry is retained. */
#astraRegistration>.reg-work-head{padding:0 12px;margin:0 auto 12px;width:calc(100% - 322px);box-sizing:border-box;border:0;background:none;box-shadow:none}
#astraRegistration>.reg-work-head #regMode{display:none}
#astraRegistration>.reg-work-head h3{font-size:20px;font-weight:500;color:#e9faff;text-shadow:0 2px 8px #062538,0 0 16px #8be7ff55}
#astraRegistration .reg-workspace{padding-top:0}
#astraRegistration .reg-workspace::before{display:none}
#astraRegistration .reg-document-tabs{margin-top:0;padding-top:0}
@media(max-width:1100px){#astraRegistration>.reg-work-head{width:calc(100% - 262px)}}
@media(max-width:760px){#astraRegistration>.reg-work-head{width:100%}#astraRegistration .reg-workspace{padding-top:0}}
/* Paired outer frames share one grid track and identical border boxes. */
@media(min-width:1201px){
#astraRegistration .reg-entry{align-items:stretch;grid-template-rows:auto auto}
#astraRegistration .reg-entry>.reg-documents,#astraRegistration .reg-entry>.reg-details{grid-row:1;align-self:stretch;height:auto;min-height:0;max-height:none;margin-top:0;margin-bottom:0;box-sizing:border-box;border:2px solid #568da6;border-top-color:#c4edf7;border-left-color:#8cc4d5;border-bottom-color:#305d78;border-radius:24px 5px 32px 5px;box-shadow:inset 0 1px 2px #ffffff77,inset 0 -2px 3px #12364b88,0 0 0 1px #12394d99,0 0 15px #70e5ff29,0 10px 20px #00162433}
#astraRegistration .reg-entry>.reg-documents{padding:12px 10px;grid-column:1}
#astraRegistration .reg-entry>.reg-details{grid-column:2}
}
/* Align the inner photo rectangle, not its surrounding document frame, with profile. */
@media(min-width:1201px){
#astraRegistration .reg-entry{grid-template-rows:auto auto auto auto;align-items:stretch;row-gap:0}
#astraRegistration .reg-entry>.reg-documents{display:contents}
#astraRegistration .reg-documents>.reg-document-tabs{grid-column:1;grid-row:1;margin-bottom:0}
#astraRegistration .reg-documents>.reg-photo-grid{display:contents}
#astraRegistration .reg-photo-slot:not([hidden]),#astraRegistration .reg-other-pane:not([hidden]){display:contents}
#astraRegistration .reg-photo-slot:not([hidden])>.reg-card-top,#astraRegistration .reg-other-pane:not([hidden])>.reg-card-top{grid-column:1;grid-row:2}
#astraRegistration .reg-other-pane:not([hidden])>#regOtherSelect:not([hidden]){grid-column:1;grid-row:2;align-self:start;max-width:45%;margin-top:5px}
#astraRegistration .reg-photo-slot:not([hidden])>.reg-slot-stage,#astraRegistration .reg-other-pane:not([hidden])>.reg-other-stage{grid-column:1;grid-row:3;align-self:stretch;width:100%;height:auto;min-height:255px;max-height:none;margin:0;box-sizing:border-box}
#astraRegistration .reg-entry>.reg-details{grid-column:2;grid-row:3;align-self:stretch;height:auto;min-height:0;max-height:none;margin:0;box-sizing:border-box}
#astraRegistration .reg-entry>.reg-photo-below{grid-column:1;grid-row:4;margin-top:8px}
}
/* Compact the paired row to the existing ID display height without scaling the image. */
@media(min-width:1201px){
#astraRegistration .reg-entry>.reg-details{padding:8px 18px;display:flex;flex-direction:column;justify-content:center}
#astraRegistration .reg-details .reg-info-label{margin:0 0 6px;padding:0 2px 5px;line-height:18px}
#astraRegistration .reg-details .reg-compact-fields{gap:5px}
#astraRegistration .reg-details .reg-compact-fields input,#astraRegistration .reg-details .reg-compact-fields select{min-height:32px;height:32px;padding:4px 10px;box-sizing:border-box;line-height:22px}
#astraRegistration .reg-details input[name=name]{font-size:24px;min-height:34px;height:34px;line-height:26px}
#astraRegistration .reg-details .reg-private-note{margin:6px 0 0;line-height:17px}
#astraRegistration .reg-details #regSavedNotice{margin:4px 0 0;line-height:18px}
#astraRegistration .reg-photo-slot:not([hidden])>.reg-slot-stage,#astraRegistration .reg-other-pane:not([hidden])>.reg-other-stage{min-height:255px}
}

/* Keep the established registration layout and expose compact partial-name search. */
#astraRegistration .reg-directory{display:block!important;width:min(920px,100%);margin:0 auto 14px;padding:12px 16px;background:#eaf6fc;color:#183c56;border-radius:12px}
#astraRegistration .reg-directory #regSearch{margin:4px 0;width:100%;padding:9px;background:white;color:#183c56}
#astraRegistration .reg-directory #regPeople{max-height:150px;overflow:auto}
#astraRegistration .reg-directory #regPeople[hidden]{display:none!important}
#astraRegistration .reg-directory #regCount{font-size:12px;margin:3px 0}

/* Fixed ID viewport and bounded profile; worker registration only. */
#astraRegistration .reg-photo-slot:not([hidden])>.reg-slot-stage,
#astraRegistration .reg-other-pane:not([hidden])>.reg-other-stage{height:255px;min-height:255px;max-height:255px;align-self:start;box-sizing:border-box}
#astraRegistration .reg-entry>.reg-details{height:255px;min-height:255px;max-height:255px;align-self:start;box-sizing:border-box;padding:8px 12px;display:flex;flex-direction:column;justify-content:flex-start;overflow:auto}
#astraRegistration .reg-details .reg-info-label{margin:0 0 4px;padding:0;line-height:18px;font-size:12px}
#astraRegistration .reg-details .reg-compact-fields{gap:4px}
#astraRegistration .reg-details .reg-compact-fields input,#astraRegistration .reg-details .reg-compact-fields select{height:27px;min-height:27px;padding:2px 5px;line-height:21px;font-size:13px;box-sizing:border-box}
#astraRegistration .reg-details input[name=name]{height:28px;min-height:28px;font-size:20px}
#astraRegistration .reg-details .reg-private-note{margin:4px 0 0;line-height:15px;font-size:11px}
#astraRegistration .reg-details #regSavedNotice{margin:3px 0;padding:2px;font-size:11px}
#astraRegistration .reg-nationality-skills{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;align-items:center}
#astraRegistration .reg-nationality-field{display:flex;min-width:0;gap:3px}
#astraRegistration .reg-nationality-field select{width:100%;min-width:0}
#astraRegistration .reg-nationality-field:has(input:not([hidden])) select{width:52px;flex-shrink:0}
#astraRegistration .reg-nationality-field input{width:100%;min-width:0}
#astraRegistration .reg-nationality-field input[hidden]{display:none!important}
#astraRegistration #workerSkillsHost{margin:0;min-width:0;height:27px}

#astraRegistration .reg-details .reg-compact-fields{gap:3px}
#astraRegistration .reg-details .reg-private-note{margin-top:2px;line-height:13px}

#astraRegistration .reg-details .reg-compact-fields{min-width:0;width:100%}
#astraRegistration .reg-details .reg-compact-fields input,#astraRegistration .reg-details .reg-compact-fields select{min-width:0;max-width:100%}
#astraRegistration .reg-details .reg-two{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
#astraRegistration .reg-details .reg-bank-line{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1.3fr)}

#astraRegistration .reg-details .reg-name-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:4px}

/* Keep the save label level with the new-worker label. */
#astraRegistration .reg-actions #regSave{transform:none;align-self:flex-start}
#astraRegistration .reg-actions #regSave .reg-seal{height:166px}
#astraRegistration .reg-actions #regSaveLabel{position:relative;z-index:2;display:inline-block;color:#fff4d5;text-shadow:0 2px 4px #001322,0 0 5px #001322;font-weight:800}
@media(max-width:760px){#astraRegistration .reg-actions #regSave .reg-seal{height:150px}}
