/* One composition at every viewport: a compact form suspended in cool, desaturated slate-blue glass. */
body[data-page=login]{overflow:auto;background:#0a1114}
body[data-page=login] #app{height:auto;min-height:100dvh;pointer-events:auto}
body[data-page=login] #world-scene,body[data-page=login] #map-overlays{visibility:hidden}
.entry-screen{position:relative;isolation:isolate;display:grid;place-items:center;min-height:100dvh;padding:84px 24px 64px;overflow:hidden;background:#0a1114;color:#f1f6f7}
.entry-atmosphere{position:absolute;inset:-10%;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 55% 3%,#b7c0c026,transparent 23%),radial-gradient(ellipse at 93% 43%,#808b8d30,transparent 51%),linear-gradient(120deg,#111b20,#1a262b 40%,#2e3a3e);filter:blur(28px)}
.entry-atmosphere:before{content:'';position:absolute;inset:6% 18% -14% 12%;background:radial-gradient(ellipse at 47% 19%,#080f136e 0 10%,transparent 23%),radial-gradient(ellipse at 32% 57%,#040a0dba 0 17%,transparent 47%),radial-gradient(ellipse at 58% 78%,#0a151a9e 0 16%,transparent 40%);filter:blur(38px);transform:rotate(-12deg);animation:entry-drift 28s ease-in-out infinite alternate}
.entry-atmosphere:after{content:'';position:absolute;inset:-12% 23% 12% 42%;background:linear-gradient(96deg,transparent,#aab5b829 39%,#ced4d41a 55%,transparent 79%);filter:blur(40px);transform:rotate(12deg);animation:entry-light 32s ease-in-out infinite alternate}
.entry-header{position:absolute;top:24px;right:30px;z-index:2}.entry-header .language-switch{background:#e6f3f009;border:1px solid #dce9eb29;backdrop-filter:blur(12px)}.entry-header .language-switch button{color:#edf4f5;min-height:36px}.entry-header .language-switch button[aria-pressed=true]{background:#ecf8ff1f;color:#fff}
.entry-access{width:min(100%,440px);min-width:0}.entry-card{position:relative;width:100%;padding:36px 36px 28px;background:linear-gradient(120deg,#e7f1f705,#d7e7eb02);border:0;border-radius:0;box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.entry-corners{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#dceaf0a6,#dceaf0a6) left top/10px 1px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) left top/1px 10px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) right top/10px 1px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) right top/1px 10px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) left bottom/10px 1px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) left bottom/1px 10px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) right bottom/10px 1px no-repeat,linear-gradient(#dceaf0a6,#dceaf0a6) right bottom/1px 10px no-repeat}
.entry-logo{display:grid;place-items:center;width:40px;height:42px;margin:-4px 0 26px -4px}.entry-logo span{width:31px;height:34px;background:#eff8fc;mask:url('/assets/pascal-anagram.png') center/contain no-repeat;-webkit-mask:url('/assets/pascal-anagram.png') center/contain no-repeat}
.entry-card h1{font-size:23px;font-weight:400;letter-spacing:-.02em;line-height:1.3;margin:0 0 8px;display:flex;gap:9px;align-items:center}.entry-card h1>span[aria-hidden]{font-size:21px;font-weight:300;color:#f0f7fbbb}.entry-description{font-size:12px;color:#dfebef;line-height:1.7;margin:0;padding-bottom:23px;border-bottom:1px solid #e4f2f522}
.entry-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:17px;margin-top:21px}.entry-field{min-width:0}.entry-field>label{display:block;font-size:12px;font-weight:400;color:#f4f8fa;margin-bottom:7px;line-height:1.4}.entry-card input{width:100%;min-width:0;height:46px;padding:11px 13px;border:1px solid #e7f2f533;border-top-color:#e7f2f559;border-bottom-color:#eff8fb70;border-radius:2px;background:#eef8ff19;color:#fff;font-size:16px;box-shadow:inset 0 1px #fff08;transition:background .2s,border-color .2s}.entry-card input::placeholder{font-size:12px;color:#dce8f0}.entry-card input:focus{outline:none;background:#f0f9ff28;border-color:#effbffb0;box-shadow:none}.entry-card input:disabled{opacity:1;-webkit-text-fill-color:#f0f6f9}.entry-card input:-webkit-autofill{-webkit-text-fill-color:#fff;box-shadow:0 0 0 1000px #2a3539 inset}
.entry-password{position:relative}.entry-password input{padding-right:44px}.entry-reveal{position:absolute;right:0;top:1px;width:44px;height:44px;display:grid;place-items:center;background:transparent;border:0;color:#e3edf4}.entry-reveal .icon{width:16px;height:16px}
.entry-card .entry-submit,.entry-card .entry-help{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;border-radius:2px;font-size:13px;font-weight:400;color:#f8fcff;position:relative;transition:background .2s,border-color .2s;box-shadow:none}
.entry-card .entry-submit{margin-top:23px;background:#e4f2ff29;border:1px solid #e4f2ff69;border-top-color:#edf7ff8c}.entry-card .entry-submit:hover:not(:disabled){background:#eaf5ff3d;border-color:#f3fbffab}.entry-submit:before,.entry-help:before{content:'';position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(#f5fbffd9,#f5fbffd9) left top/3px 1px no-repeat,linear-gradient(#f5fbffd9,#f5fbffd9) right bottom/3px 1px no-repeat}
.entry-submit[aria-busy=true]{overflow:hidden;opacity:1}.entry-submit[aria-busy=true]:after{content:'';position:absolute;bottom:0;left:0;height:1px;width:30%;background:#fff;animation:entry-submit-scan 1.5s ease-in-out infinite}.entry-submit:disabled{opacity:.7}
.entry-assistance{margin-top:14px;padding-top:14px;border-top:1px solid #e4f2f522}.entry-card .entry-help{background:#dbeefa09;border:1px solid #dfedf529;color:#e6f0f5;font-size:12px}.entry-card .entry-help:hover{background:#edf7ff1a;border-color:#e8f5ff66}
.entry-feedback{min-height:70px;padding-top:12px}.entry-error,.entry-caps,.entry-help-copy{font-size:12px;line-height:1.7;margin:0 0 4px}.entry-error{color:#ffe0d5}.entry-caps{color:#fff1c8}.entry-help-copy{color:#f1f7fb}.entry-private{display:flex;align-items:center;gap:6px;font-size:10px;color:#d1e1e9;line-height:1.6}.entry-private .icon{width:11px;height:11px}.entry-signature{margin-left:auto;font-size:9px;letter-spacing:.12em}.entry-card :focus-visible{outline:1px solid #edfaffb8;outline-offset:3px}.entry-card input:focus-visible{outline:0}
.entry-footer{position:absolute;bottom:23px;left:24px;right:24px;display:flex;justify-content:center;text-align:center;font-size:10px;line-height:1.6;color:#e0edf0b3}.entry-footer a{color:#e3f1f5;text-underline-offset:4px}
@keyframes entry-drift{to{transform:translate3d(3%,-2%,0) rotate(-8deg)}}@keyframes entry-light{to{transform:translate3d(-5%,3%,0) rotate(7deg);opacity:.8}}@keyframes entry-submit-scan{from{transform:translateX(-100%)}to{transform:translateX(340%)}}
@media(min-width:1600px){.entry-access{width:460px}.entry-card{padding:40px}.entry-card h1{font-size:25px}.entry-description,.entry-field>label,.entry-card input::placeholder{font-size:13px}}
@media(max-width:600px){.entry-screen{padding:78px 20px 58px}.entry-header{top:18px;right:20px}.entry-card{padding:28px 22px 24px}.entry-card h1{font-size:22px}.entry-description{font-size:12px}.entry-atmosphere{inset:-15%;filter:blur(18px)}.entry-atmosphere:before,.entry-atmosphere:after{filter:blur(25px);animation:none}.entry-private{font-size:9px}.entry-signature{font-size:8px}.entry-footer{bottom:18px;font-size:9px}}
@media(max-height:760px){.entry-screen{padding-top:70px}.entry-logo{margin-bottom:20px}.entry-card{padding-top:26px;padding-bottom:22px}.entry-feedback{min-height:62px}}
@media(prefers-reduced-motion:reduce){.entry-atmosphere:before,.entry-atmosphere:after,.entry-submit[aria-busy=true]:after{animation:none!important}.entry-card input,.entry-submit,.entry-help{transition:none}}
