.entry-gate { position: fixed; inset: 0; width: 100vw; height: 100dvh; z-index: 10000; overflow: hidden; background: #000; color: #fff; font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; overscroll-behavior: contain; }
.entry-device { position: absolute; top: 50%; left: 50%; width: 380px; height: 570px; overflow: hidden; transform: translate(-50%,-50%) scale(var(--entry-scale,1)); transform-origin: center; }
.entry-screen { position: relative; width: 380px; height: 570px; overflow: hidden; background: #111; animation: entry-screen-in 650ms cubic-bezier(.2,.7,.2,1) both; }
.entry-wallpaper { position: absolute; inset: 0; background: #304551 url("ios4-wallpaper.jpg") center/cover no-repeat; }
.entry-status { position: absolute; inset: 0 0 auto; z-index: 2; display: flex; align-items: center; justify-content: space-between; height: 24px; padding: 0 4px; color: #d4d4d4; background: linear-gradient(#101010e8,#090909e8); box-shadow: inset 0 -1px #88888855; font-size: 14px; font-weight: bold; line-height: 24px; text-shadow: 0 -1px 1px #000; }
.entry-status-left,.entry-status-right { display: flex; align-items: center; gap: 4px; height: 24px; white-space: nowrap; }
.entry-status svg { display: block; flex: none; fill: currentColor; filter: drop-shadow(0 -1px #0008); }
.entry-signal { width: 24px; height: 15px; }
.entry-wifi { width: 20px; height: 17px; margin-left: 3px; }
.entry-status-lock { position: absolute; top: 4px; left: calc(50% - 6px); width: 12px; height: 16px; }
.entry-rotation { width: 23px; height: 21px; margin-right: 1px; }
.entry-battery { width: 28px; height: 14px; }
.entry-clock { position: absolute; top: 24px; left: 0; right: 0; z-index: 1; height: 114px; padding-top: 2px; border-bottom: 1px solid #ffffff66; color: #fff; background: linear-gradient(#7272729c,#4c4c4c9c 49%,#242424b3 50%,#171717b3); box-shadow: inset 0 1px #ffffff30; text-align: center; text-shadow: 0 1px 2px #000; }
#entry-time { display: block; height: 78px; font: 300 76px/78px "Helvetica Neue","Segoe UI Light","Segoe UI",Helvetica,Arial,sans-serif; letter-spacing: -3px; }
#entry-date { display: block; margin-top: 0; font: normal 20px/29px "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing: -.3px; }
.entry-footer { position: absolute; inset: auto 0 0; z-index: 1; display: grid; place-items: center; height: 114px; border-top: 1px solid #ffffff5c; background: linear-gradient(#77777799,#333333b8 44%,#101010e0); box-shadow: inset 0 1px #ffffff24; }
.entry-unlock-track { position: relative; width: 330px; height: 64px; border: 1px solid #75757599; border-radius: 15px; background: linear-gradient(#050505f2,#181818f2); box-shadow: inset 0 2px 7px #000b,0 1px #ffffff26; }
.entry-unlock-label { position: absolute; inset: 0 12px 0 102px; display: grid; place-items: center; color: transparent; background: linear-gradient(105deg,#77777770 0 36%,#ffffffcf 46%,#ffffffed 50%,#90909080 59%,#77777770 69% 100%); background-size: 280% 100%; background-position: 100% 0; background-clip: text; -webkit-background-clip: text; font: normal 30px/1 "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing: -.7px; white-space: nowrap; opacity: calc(1 - var(--unlock-progress,0)); pointer-events: none; animation: entry-unlock-shine 3.2s linear infinite; }
.entry-unlock { appearance: none; -webkit-appearance: none; position: absolute; inset: 0; display: block; width: 100%; height: 100%; min-width: 0; margin: 0; padding: 0 3px; border: 0; border-radius: 14px; background: transparent; box-shadow: none; cursor: grab; touch-action: none; }
.entry-unlock:active { cursor: grabbing; }
.entry-unlock:disabled { opacity: 1; cursor: default; }
.entry-unlock:focus-visible { outline: 2px solid #f3f3f3; outline-offset: 5px; }
.entry-unlock::-webkit-slider-runnable-track { height: 62px; border: 0; background: transparent; }
.entry-unlock::-moz-range-track { height: 62px; border: 0; background: transparent; }
.entry-unlock::-moz-range-progress { background: transparent; }
.entry-unlock::-webkit-slider-thumb { box-sizing: border-box; appearance: none; -webkit-appearance: none; width: 82px; height: 54px; margin-top: 4px; border: 1px solid #9e9e9e; border-radius: 12px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='82' height='54' viewBox='0 0 82 54'%3E%3Cpath d='M23 20h22v-8l20 15-20 15v-8H23z' fill='%23858585' stroke='%23737373' stroke-width='1'/%3E%3Cpath d='M23 19h22v-8l20 15' fill='none' stroke='%23fff' stroke-opacity='.85'/%3E%3C/svg%3E") center/82px 54px no-repeat,linear-gradient(#fff,#ededed 46%,#d4d4d4 51%,#c6c6c6); box-shadow: inset 0 1px #fff,0 1px 3px #000d; }
.entry-unlock::-moz-range-thumb { box-sizing: border-box; width: 82px; height: 54px; border: 1px solid #9e9e9e; border-radius: 12px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='82' height='54' viewBox='0 0 82 54'%3E%3Cpath d='M23 20h22v-8l20 15-20 15v-8H23z' fill='%23858585' stroke='%23737373' stroke-width='1'/%3E%3Cpath d='M23 19h22v-8l20 15' fill='none' stroke='%23fff' stroke-opacity='.85'/%3E%3C/svg%3E") center/82px 54px no-repeat,linear-gradient(#fff,#ededed 46%,#d4d4d4 51%,#c6c6c6); box-shadow: inset 0 1px #fff,0 1px 3px #000d; }
.entry-gate.is-unlocking { pointer-events: none; animation: entry-gate-out 650ms ease-in 140ms both; }
.entry-gate.is-unlocking .entry-status { animation: entry-status-out 450ms cubic-bezier(.4,0,.3,1) both; }
.entry-gate.is-unlocking .entry-clock { animation: entry-clock-out 520ms cubic-bezier(.4,0,.3,1) both; }
.entry-gate.is-unlocking .entry-footer { animation: entry-footer-out 520ms cubic-bezier(.4,0,.3,1) both; }
.entry-gate.is-unlocking .entry-wallpaper { animation: entry-wallpaper-out 750ms ease-in both; }
.entry-gate.is-unlocking .entry-unlock-label { animation: none; opacity: 0; }
@keyframes entry-screen-in { from { opacity: 0; transform: scale(.96); } to { opacity: 1; transform: scale(1); } }
@keyframes entry-unlock-shine { 0%,12% { background-position: 100% 0; } 85%,100% { background-position: -25% 0; } }
@keyframes entry-status-out { to { opacity: 0; transform: translateY(-24px); } }
@keyframes entry-clock-out { to { opacity: 0; transform: translateY(-138px); } }
@keyframes entry-footer-out { to { opacity: 0; transform: translateY(114px); } }
@keyframes entry-wallpaper-out { to { opacity: 0; transform: scale(1.07); } }
@keyframes entry-gate-out { to { opacity: 0; visibility: hidden; } }
@media (prefers-reduced-motion: reduce) { .entry-screen,.entry-unlock-label,.entry-gate.is-unlocking,.entry-gate.is-unlocking .entry-status,.entry-gate.is-unlocking .entry-clock,.entry-gate.is-unlocking .entry-footer,.entry-gate.is-unlocking .entry-wallpaper { animation: none; } .entry-unlock-label { background-position: 45% 0; } .entry-gate.is-unlocking { opacity: 0; visibility: hidden; } }
.entry-gate[hidden] { display: none; }
:root.is-unlocking .site-shell { animation: entry-site-in 700ms ease-out both; }
@keyframes entry-site-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { :root.is-unlocking .site-shell { animation: none; } }
.entry-status,.entry-clock,.entry-footer { -webkit-backdrop-filter: grayscale(1); backdrop-filter: grayscale(1); }
