/* Public information and sign-in entry; no editor or authentication behavior. */
.publicDocument{background:#111413;color:#edf0e6;font-family:system-ui,sans-serif;line-height:1.7}
.publicDocument header,.publicDocument main,.publicDocument footer{width:min(820px,calc(100% - 40px));margin:auto}
.publicDocument header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;padding:24px 0;border-bottom:1px solid #384036}
.publicDocument .publicBrand{display:flex;align-items:center;gap:12px;font-weight:700;text-decoration:none}
.publicBrand img{object-fit:contain;flex:none}
.publicDocument nav{display:flex;flex-wrap:wrap;gap:16px}
.publicDocument main{padding:40px 0 56px}.publicDocument h1{font-size:clamp(28px,6vw,44px);line-height:1.15;margin:0 0 20px;text-wrap:balance}
.publicDocument h2{font-size:20px;line-height:1.4;margin:32px 0 10px}.publicDocument p,.publicDocument li{margin:10px 0 18px}
.publicDocument .muted{color:#b6beaf}.publicDocument footer{border-top:1px solid #384036;padding:24px 0 36px}
.publicDocument a,#accessGate a{color:inherit;text-underline-offset:4px;overflow-wrap:anywhere}
.publicDocument a:hover,#accessGate a:hover{text-decoration-thickness:2px}
.publicDocument a:focus-visible,#accessGate a:focus-visible{outline:2px solid #dced7f;outline-offset:4px;border-radius:2px}
.publicDocument .publicAction{display:inline-block;background:#dced7f;color:#172014;padding:10px 18px;border-radius:6px;text-decoration:none;font-weight:650}
body.auth-locked>:is(header,#layersBar,#main,#foot){visibility:hidden;filter:none;pointer-events:none}
body #accessGate{overflow-y:auto;display:grid;place-items:center;align-content:safe center;background:var(--bg,#111413);backdrop-filter:none;-webkit-backdrop-filter:none;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
body #accessGate .accessCard{box-sizing:border-box;width:min(480px,100%);margin:0 auto;padding:28px;text-align:left;box-shadow:none;border-radius:12px;display:block;color:var(--ink,#edf0e6)}
body #accessGate .gateTop{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}
body #accessGate .accessBrand{justify-content:flex-start;gap:8px;color:inherit;font-size:20px}
body #accessGate .accessBrand img{width:28px;height:28px}
body #accessGate .gateLanguages{justify-content:flex-start;gap:2px}
body #accessGate .gateLanguages .btn{min-width:36px;min-height:36px;padding:6px;border:1px solid transparent;background:transparent;color:var(--dim,#b6beaf);font-size:11px;box-shadow:none}
body #accessGate .gateLanguages .btn[aria-pressed=true]{border-color:var(--line2,#384036);color:var(--ink,#edf0e6);background:var(--bg,#111413)}
body #accessGate .gateArtwork{display:block;width:100%;height:auto;margin-bottom:24px}
body #accessGate h1{font-size:clamp(32px,7vw,48px);line-height:1.02;margin:0 0 16px;color:inherit;text-wrap:balance;white-space:pre-line}
body #accessGate p{font-size:14px;line-height:1.6;color:var(--dim,#b6beaf);text-wrap:pretty}
body #accessGate .publicFeatures{display:block;margin:0 0 24px;padding:0;border:0}
body #accessGate #gateGoogle,body #accessGate #gateLocalTest{width:100%;min-height:48px;margin:0;padding:12px 16px;background:#dced7f!important;color:#172014!important;border:1px solid #dced7f!important;border-radius:6px;font-size:14px;font-weight:650}
body #accessGate #gateGoogle:hover:not(:disabled),body #accessGate #gateLocalTest:hover{background:#e6f3a5!important}
body #accessGate button:focus-visible{outline:2px solid var(--ink,#edf0e6);outline-offset:3px}
body #accessGate a:focus-visible{outline-color:var(--ink,#edf0e6)}
body #accessGate #gateRetry{margin:8px 0 0}
body #accessGate #gateStatus{margin:10px 0 0;min-height:0;font-size:12px;overflow-wrap:anywhere}
body #accessGate #gateStatus:empty{display:none}
body #accessGate .gateDisclosure{font-size:11px;line-height:1.6;margin:12px 0 20px}
body #accessGate .publicLinks{display:flex;flex-wrap:wrap;gap:8px 18px;padding-top:16px;border-top:1px solid var(--line2,#384036);font-size:12px;line-height:1.6}
body #accessGate .publicLinks a{color:var(--dim,#b6beaf);text-decoration:none;padding:4px 0}
body #accessGate .publicLinks a:hover{color:var(--ink,#edf0e6);text-decoration:underline}
@media(max-width:540px){.publicDocument header{align-items:flex-start;flex-direction:column}body #accessGate .accessCard{padding:22px}body #accessGate .gateTop{margin-bottom:20px}}
@media(max-height:640px){body #accessGate{align-content:start}}
