/* Navy & Silver / Continuity House entrance, with the selected Registry Lattice. */
#connectScreen{
 --registry-start:#42516a;--registry-end:#2b3a50;--registry-header:#2d3e53;
 --registry-ink:#e6ebef;--registry-muted:#c1ccd6;--registry-line:#7d90a5;--registry-accent:#c1cddd;
 --registry-paper:#c2cbd3;--registry-paper-ink:#253a4b;--registry-paper-muted:#3c5468;--registry-paper-rule:#8398a6;--registry-paper-accent:#334f63;
 --registry-module:#9fadb9;--registry-module-ink:#2b414f;--registry-module-muted:#2a3f4e;
 --registry-input:#d7dfe3;--registry-button:#344e6b;--registry-button-ink:#f0f3f4;--registry-plaque:#3a526c;--registry-decor:#8fa7b9;
 position:fixed;inset:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;
 padding:0;border:0;overflow:auto;background:linear-gradient(105deg,var(--registry-start),var(--registry-end) 70%);
 color:var(--registry-ink);color-scheme:dark;font-family:var(--sans);text-align:left;
}
#connectScreen::before{content:none}
#connectScreen *{box-sizing:border-box}
#connectScreen h1,#connectScreen h2,#connectScreen p{margin:0}
#connectScreen .registry-masthead{padding:24px 35px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:var(--registry-header);border-bottom:1px solid var(--registry-line);flex-shrink:0}
#connectScreen .registry-brand{display:flex;align-items:center;gap:13px;min-width:0}
#connectScreen .registry-brand-mark{width:43px;height:43px;display:grid;place-items:center;flex:none;border:1px solid var(--registry-accent);color:var(--registry-accent);font:400 13px/1 var(--mono);letter-spacing:.07em}
#connectScreen .registry-brand strong{display:block;font-size:17px;font-weight:500;letter-spacing:.065em;line-height:1.3}
#connectScreen .registry-brand small{display:block;font-size:11px;line-height:1.5;color:var(--registry-muted);margin-top:4px}
#connectScreen .registry-system-status{display:flex;align-items:center;gap:9px;color:var(--registry-accent);font:400 11px/1.5 var(--mono);letter-spacing:.05em}
#connectScreen .registry-system-status i{width:5px;height:5px;flex:none;border-radius:50%;background:currentColor}
#connectScreen .registry-main{width:min(1000px,100%);margin:0 auto;flex:1;padding:43px 42px 37px;display:flex;flex-direction:column;justify-content:center;gap:34px}
#connectScreen .registry-lobby{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:38px;align-items:center}
#connectScreen .registry-eyebrow{font:400 11px/1.6 var(--mono);letter-spacing:.1em;color:var(--registry-accent)}
#connectScreen .registry-lobby h1{font:400 46px/1.14 Georgia,serif;letter-spacing:-.04em;margin:17px 0 20px;max-width:13ch;color:var(--registry-ink);text-wrap:initial}
#connectScreen .registry-description{font-size:14px;line-height:1.75;color:var(--registry-muted);max-width:36ch}
#connectScreen .registry-geometry{height:250px;position:relative;display:flex;justify-content:center;align-items:center;color:var(--registry-accent)}
#connectScreen .registry-counter{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,.8fr);border:1px solid var(--registry-paper-rule);background:var(--registry-paper);color:var(--registry-paper-ink);box-shadow:0 17px 28px #17232a30;color-scheme:light}
#connectScreen .registry-registration{padding:28px 30px;min-width:0}
#connectScreen .registry-registration .registry-eyebrow{color:var(--registry-paper-accent)}
#connectScreen .registry-registration h2{font-size:22px;font-weight:400;line-height:1.3;margin-top:9px}
#connectScreen[data-registry-state="processing"] .registry-registration-intro,#connectScreen[data-registry-state="certified"] .registry-registration-intro{display:none}
#connectScreen .personnel-form{margin-top:23px}
#connectScreen .personnel-form label{font:500 13px/1.5 var(--sans);color:var(--registry-paper-ink);margin-bottom:10px}
#connectScreen .registry-entry{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:13px;align-items:stretch}
#connectScreen .personnel-form input{min-height:51px;padding:13px 14px;background:var(--registry-input);border:1px solid var(--registry-paper-rule);color:var(--registry-paper-ink);font:400 16px/1.4 var(--sans);border-radius:0}
#connectScreen .personnel-form input::placeholder{color:var(--registry-paper-muted);opacity:1}
#connectScreen .personnel-name-help,#connectScreen .certificate-retention{font:400 12px/1.6 var(--sans);color:var(--registry-paper-muted);margin-top:10px}
#connectScreen .personnel-error{font:400 13px/1.6 var(--sans);color:#811823;margin-top:12px}
#connectScreen .personnel-form input[aria-invalid="true"]{border-color:#811823}
#connectScreen #connectBtn,#connectScreen #enterArchiveBtn{margin:0;padding:12px 13px;min-height:51px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--registry-button);color:var(--registry-button-ink);border:1px solid var(--registry-button);font:500 12px/1.5 var(--sans);letter-spacing:.02em;box-shadow:none}
#connectScreen #connectBtn>span,#connectScreen #enterArchiveBtn>span{font:400 20px/1 var(--sans)}
#connectScreen #connectBtn:hover,#connectScreen #enterArchiveBtn:hover{background:var(--registry-header);border-color:var(--registry-header);transform:none}
#connectScreen button:focus-visible,#connectScreen input:focus-visible,#connectScreen #personnelProgress:focus-visible{outline:2px solid var(--registry-paper-ink);outline-offset:3px}
#connectScreen .personnel-verification{padding:5px 0 12px}
#connectScreen .verification-head{font:400 11px/1.6 var(--mono);flex-wrap:wrap;color:var(--registry-paper-muted)}
#connectScreen .verification-head b{font-weight:500;color:var(--registry-paper-accent)}
#connectScreen .verification-steps li{font:400 14px/1.5 var(--sans);border-color:var(--registry-paper-rule);color:var(--registry-paper-muted)}
#connectScreen .verification-steps li::before{font-size:11px;color:var(--registry-paper-muted)}
#connectScreen .verification-steps li.active,#connectScreen .verification-steps li.active::before,#connectScreen .verification-steps li.complete{color:var(--registry-paper-accent)}
#connectScreen #personnelProgress{font:400 12px/1.6 var(--sans);color:var(--registry-paper-accent);margin:16px 0 0}
#connectScreen .personnel-certificate{padding:0;border:0;background:transparent}
#connectScreen .certificate-heading{font:400 11px/1.5 var(--mono);flex-wrap:wrap;color:var(--registry-paper-muted)}
#connectScreen .certificate-heading b{font-weight:500;color:var(--registry-paper-accent)}
#connectScreen .certificate-heading b::before{background:var(--registry-paper-accent)}
#connectScreen .certificate-name{font:400 29px/1.3 var(--sans);letter-spacing:-.03em;color:var(--registry-paper-ink);margin:17px 0 23px}
#connectScreen .certificate-details{grid-template-columns:minmax(105px,.8fr) minmax(0,1.2fr);gap:12px 15px;padding:18px 0;border-color:var(--registry-paper-rule);font:400 12px/1.6 var(--sans)}
#connectScreen .certificate-details span{color:var(--registry-paper-muted);letter-spacing:0}
#connectScreen .certificate-details b{color:var(--registry-paper-ink);font-weight:400;overflow-wrap:anywhere}
#connectScreen #certificateId{font-family:var(--mono);font-size:11px;letter-spacing:.025em}
#connectScreen #certificateGreeting{font:400 12px/1.6 var(--sans);color:var(--registry-paper-accent);margin:16px 0}
#connectScreen #enterArchiveBtn{margin-top:18px;width:100%;font-size:13px}
#connectScreen .registry-state{padding:28px 22px;border-left:1px solid var(--registry-paper-rule);background:var(--registry-module);display:flex;flex-direction:column;justify-content:space-between;gap:24px;color:var(--registry-module-ink)}
#connectScreen .registry-state strong{font-size:15px;font-weight:400;line-height:1.6;display:block;margin-top:11px;overflow-wrap:anywhere}
#connectScreen .registry-state .registry-eyebrow{color:var(--registry-module-ink)}
#connectScreen .registry-micro{font:400 11px/1.65 var(--sans);letter-spacing:.025em;color:var(--registry-muted)}
#connectScreen .registry-state .registry-micro{color:var(--registry-module-muted)}
#connectScreen .registry-phase{padding-top:14px;border-top:1px solid var(--registry-paper-rule)}
#connectScreen .registry-record{display:flex;justify-content:space-between;gap:25px;align-items:start}
#connectScreen .registry-footer{padding:18px 35px;display:flex;align-items:center;justify-content:space-between;gap:17px;flex-wrap:wrap;border-top:1px solid var(--registry-line);flex-shrink:0}
/* The lattice is a local interface emblem, not a source provenance claim. */
#connectScreen .system-sigil{position:relative;width:232px;height:232px;flex:none;color:var(--registry-accent);--sg-line:var(--registry-line);--sg-bright:var(--registry-decor)}
#connectScreen .system-sigil.is-certified{--sg-line:var(--registry-decor);--sg-bright:var(--registry-ink)}
#connectScreen .system-sigil span{position:absolute;display:block}
#connectScreen .system-sigil .sg-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font:400 35px/1 Georgia,serif;letter-spacing:.1em;color:var(--registry-ink)}
#connectScreen .sg-center small{font:400 11px/1.2 var(--mono);letter-spacing:.12em;color:var(--registry-accent)}
#connectScreen .sg-label,#connectScreen .sg-status{left:50%;transform:translateX(-50%);padding:4px 7px;background:var(--registry-end);font:400 11px/1.3 var(--mono);letter-spacing:.08em;white-space:nowrap;z-index:2;color:var(--registry-accent)}
#connectScreen .sg-label-top{top:2%}
#connectScreen .sg-status{bottom:2%;letter-spacing:.035em}
#connectScreen .sg-node{width:7px;height:7px;border:1px solid var(--sg-bright);background:var(--registry-end);z-index:2}
#connectScreen .is-certified .sg-node{background:var(--registry-ink)}
#connectScreen .sg-lattice-field{inset:12%;background:linear-gradient(90deg,transparent calc(50% - .5px),var(--sg-line) 50%,transparent calc(50% + .5px)),linear-gradient(transparent calc(50% - .5px),var(--sg-line) 50%,transparent calc(50% + .5px));background-size:22px 22px;opacity:.3}
#connectScreen .sg-plane{inset:17%;border:1px solid var(--sg-line)}
#connectScreen .sg-plane-back{transform:translate(-12px,-8px) skewY(-13deg)}
#connectScreen .sg-plane-front{transform:translate(12px,8px) skewX(-13deg);border-color:var(--sg-bright)}
#connectScreen .sg-lattice-axis{background:var(--sg-line)}
#connectScreen .sg-axis-h{top:50%;left:0;right:0;height:1px}
#connectScreen .sg-axis-v{left:50%;top:0;bottom:0;width:1px}
#connectScreen .sg-lattice-core{inset:32%;border:1px solid var(--sg-bright);background:var(--registry-plaque);box-shadow:0 0 0 7px var(--registry-end)}
#connectScreen .sg-trace{border-color:var(--sg-bright);border-style:solid;border-width:0;z-index:1}
#connectScreen .sg-trace-n{top:12%;left:39%;width:11%;height:20%;border-left-width:1px;border-top-width:1px}
#connectScreen .sg-trace-e{top:39%;right:10%;width:22%;height:11%;border-right-width:1px;border-top-width:1px}
#connectScreen .sg-trace-s{bottom:12%;right:39%;width:11%;height:20%;border-right-width:1px;border-bottom-width:1px}
#connectScreen .sg-trace-w{bottom:39%;left:10%;width:22%;height:11%;border-left-width:1px;border-bottom-width:1px}
#connectScreen .sg-lattice-node-a{top:11%;left:48%}
#connectScreen .sg-lattice-node-b{top:48%;right:9%}
#connectScreen .sg-lattice-node-c{bottom:11%;right:48%}
#connectScreen .sg-lattice-node-d{bottom:48%;left:9%}
@media(max-width:800px){
 #connectScreen .registry-masthead{padding:22px 24px}
 #connectScreen .registry-footer{padding:18px 24px}
 #connectScreen .registry-main{padding:31px 29px;gap:29px}
 #connectScreen .registry-lobby{gap:23px;grid-template-columns:minmax(0,1fr) 170px}
 #connectScreen .registry-lobby h1{font-size:39px}
 #connectScreen .registry-geometry{height:210px}
 #connectScreen .system-sigil{width:158px;height:158px}
 #connectScreen .system-sigil .sg-center{font-size:26px;gap:7px}
 #connectScreen .sg-center small{letter-spacing:.025em}
 #connectScreen .sg-label,#connectScreen .sg-status{letter-spacing:0;padding:3px 5px}
 #connectScreen .sg-plane-back{transform:translate(-8px,-5px) skewY(-13deg)}
 #connectScreen .sg-plane-front{transform:translate(8px,5px) skewX(-13deg)}
 #connectScreen .registry-counter{grid-template-columns:minmax(0,1fr)}
 #connectScreen .registry-state{border-left:0;border-top:1px solid var(--registry-paper-rule);display:grid;grid-template-columns:1fr 1fr;padding:21px 29px;gap:20px}
 #connectScreen .registry-phase{grid-column:1/-1}
 #connectScreen .registry-record{flex-wrap:wrap;gap:12px}
}
@media(max-width:520px){
 #connectScreen .registry-masthead{padding:21px 18px;align-items:start;gap:13px}
 #connectScreen .registry-brand{gap:10px}
 #connectScreen .registry-brand-mark{width:34px;height:34px;font-size:11px}
 #connectScreen .registry-brand strong{font-size:15px}
 #connectScreen .registry-brand small{max-width:19ch}
 #connectScreen .registry-system-status{max-width:84px;letter-spacing:0;align-items:start}
 #connectScreen .registry-system-status i{margin-top:5px}
 #connectScreen .registry-main{padding:28px 20px;gap:27px;justify-content:flex-start}
 #connectScreen .registry-lobby{grid-template-columns:minmax(0,1fr);gap:19px}
 #connectScreen .registry-lobby h1{font-size:37px}
 #connectScreen .registry-geometry{height:200px}
 #connectScreen .system-sigil{width:182px;height:182px}
 #connectScreen .system-sigil .sg-center{font-size:30px}
 #connectScreen .registry-registration{padding:25px 21px}
 #connectScreen .registry-entry{grid-template-columns:minmax(0,1fr);gap:12px}
 #connectScreen #connectBtn{font-size:13px}
 #connectScreen .registry-state{padding:22px 21px;grid-template-columns:minmax(0,1fr);gap:20px}
 #connectScreen .certificate-name{font-size:26px}
 #connectScreen .certificate-details{grid-template-columns:minmax(0,1fr);gap:5px}
 #connectScreen .certificate-details b{margin-bottom:9px}
 #connectScreen .registry-footer{padding:18px}
}
@media(prefers-reduced-motion:reduce){#connectScreen,#connectScreen button{transition:none}}
