@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAZcABAAAAAAC7QAAAYCAAMCDAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbgh4ceAZgP1NUQVREAGwRCAqJCIZ9ATYCJAM+CyIABCAFhEwHIAwHG3EJEdWrMSD4eRg7Iwa0bAsnTpH8p+7SnLBCnw/hWf9mJlXS7abk0gcxJ6v7haNQHOwQPX9o836qBiwUkAQwIYqVfgX8iA6oI523sn8/twGpvFvCJYlo/GJTCYC/P1TNnBibHzPBAhiwCK7xsvbLwrk6txUrVsx5rGtjL+cdRAsLVBAsVc2cHXFIdrKcyh4/XnthEIAWAAAURXAIJTWCAHiZSqHzKrUk6DbtBvaGDQeALMNxOgGQdaf+vaEGKMOhCorXEg24un6PYsqoVHZzBRU1gRLJJTSXsFyiyh2aVMg+a0R/1b0XDJd7RZTHtjNStcg3aYmeUFACIL/LU7Z8IuWLfAKUnyg5iDNRfpyPIB+fPh1Bboj9DEBQDESncDaVToIKk1TpqoD1m5bD+veEySq2KUBpvYfeg3pBdxGBSSkAIKKSCwOxHpWRVTOelo9cT0PAtdrkDyiA3tCm8nc148kwVGvkVjocy7EAcbeKzRpUxjj4xib28udLgLsjiSidRl7bbgA+zKTrFGCKKPGLrrt0HUgA/FMUJ8QmuqmfloL8ATDqBIEiBHBGBuVA4p/DaQrAQMRQPpkqogqqoQ/6+0xyQPsOecmNHMg+ea88Xf7v1hcQjhFBIouFIvCeBOiALAByCyAAcAEAisZBhK3u5+FWZtblXJrEvFKisUDLCWKLmKbaJkILvkerGWFbExfv3bZqrqOxJE2fDivLdm3ytlk/fr1NEhrP3NijMFxcCAgSH4nwwVAoJIXCYaEwWjFlP7IK3ojDbRK9whCJX3TwZL60efl8lyRs27bOW5mZt3brpnNzvDR9tmmZBEKLnYu8LWbNsy6+LfIOcS1ePtvVNCuYtD7apK2E3TV0oSDFNFkMdCkMhzG2JxwyrqP21vMh32ytvKdgyzn4rr3zIhv3Cv+NI+PmReOi0Vlk1lw+uNuXOGvdul1C4Qbf9Pk2IRqNCoU7MHY5H1zpWHo6FAph7L/mJoVrbNN388G1zln7Bvh6NmmT2mTVsiXmf2dMjx8RPLnXkzTDgrlpCatPHy/ybq7d/csbxP8wr/gB6ezeYgN15S3lmPMK6o0pWd/VSlYkdZ9yamwN5tyGsWWi9+9kC8FVTVbVPf+g3LE5aZh1qlhb9x5iLiI8jOdadevUpKB1eo2G6YNYda5Vud8H1q1RfkyxpROvdCnd3pJSc0hBw7bJY1kNViVrUrMeE8vC/szW+lPTD9erRsQnfQ2abXWyd3Wx+fmrflv8inhj2xz+PF/EBXGkd34T699sTK3rWL5HLC86cW+X+PrJXKNlS2ZEzBHgxvEYzZbOjI9cFp1tbLCsM8Z7LrY7F88zajZ04S+wfOUfh/u/SKPcnHZV6hUP9mxYp4JUMrlTmfolpvSuF1r/PdAllmhq2sqfEPuO9FcV6zOqrj4vgk5KQa33KGv3VpZTlS/Ds05mcdb9Lf7MHzc8GTeMiom1mKtxmVbl4n2e0U7Dr2bDv8YtdTObBnoZ++XE6rTo2ssWsvN5Vus73l4Jh9pmjGO0PMp/Oo4e5F+kMeRV2N4KwjTF02TO/lWhcr7ExIo+bpYYMwR0AgJQ0XkFCiWxZt+BkjBD9hCQ3wJdsYXxbOaitfzaJfQGAbCm/XPbu1FtYkt9UDP2GADu/Grc09x93vioPP7nfe4SZwalRAEAgV+S96uI86OUrfpQPmd1bH3ibkPktwf9tchsbqR0FL+haZBUx6AqFUAWAB4jtSqjNaMoC8iQjABE46EyGUqEAxw+SxAEQ7oaAM8BRAi154TSek+Y9ALhWCqdKDiqAlGyVEu1TpHqr0EAbS3fQ9jPRBTQ1WZ56Xp5oISMoNvudOClUNnNTm6A4Ba4BiM1/fM4kmXUEMqskyIvnLZaQl1OinGTuHaLdC1nyLIhqhdudVdoLId2lmUpUqlDyrw5PFjIgoRR2LjOon5B9vDD+q6kN5Fvvwgi/sf0mu32eLb8P9az4ayvcaumgB9mAahh7AXy5rSNbcKQTLjfi8ImEa0mo1u0rptF6cuelM2C7yZiCwUl+Yc8G12ndzuRJ63nfgU=) format("woff2")}@font-face{font-family:"Noto Serif SC";font-style:normal;font-weight:300;font-display:swap;src:url(/assets/noto-serif-sc-300-BLWyMqpd.woff2) format("woff2")}:root{color:#4a4038;background:#fff9f5;font-family:"Noto Serif SC",Songti SC,serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}button,input{font:inherit}.gate-page{position:relative;display:grid;min-height:100svh;overflow:hidden;place-items:center;padding:4.5rem 1.5rem 6rem;background:#fff9f5}.gate-page__background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;pointer-events:none}.gate-card{position:relative;z-index:1;width:min(100%,27rem);padding:3.25rem 2.6rem 2.4rem;border:1px solid rgba(189,151,145,.22);border-radius:1.35rem;background:#fffcf9c2;box-shadow:0 22px 70px #664c4117,0 4px 18px #d8919d14;text-align:center;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:gate-card-in .72s cubic-bezier(.22,.1,.36,1) both}.constellation{position:relative;display:grid;width:5.4rem;height:1.6rem;margin:0 auto 1.35rem;place-items:center}.constellation__line{width:3.4rem;height:1px;background:linear-gradient(90deg,transparent,rgba(202,142,154,.45),transparent);transform:rotate(-7deg) scaleX(.82);transition:transform .78s cubic-bezier(.22,.1,.36,1),opacity .5s ease}.constellation__star{position:absolute;width:.48rem;height:.48rem;background:#cf909cad;box-shadow:0 0 0 4px #e2a8b20f,0 0 16px #d28e9b2e;transform:rotate(45deg);transition:left .9s cubic-bezier(.22,.1,.36,1),right .9s cubic-bezier(.22,.1,.36,1),box-shadow .7s ease}.constellation__star--left{left:.25rem;top:.7rem}.constellation__star--right{right:.25rem;top:.25rem}.gate-card--success .constellation__star--left{left:2rem}.gate-card--success .constellation__star--right{right:2rem}.gate-card--success .constellation__star{box-shadow:0 0 0 6px #e2a8b21f,0 0 25px #d28e9b8c}.gate-card--success .constellation__line{opacity:.3;transform:rotate(0) scaleX(.2)}.gate-card__eyebrow{margin:0 0 .8rem;color:#92756da8;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:.64rem;font-weight:400;letter-spacing:.26em}.gate-card h1{max-width:19rem;margin:0 auto;color:#4a4038;font-family:Lora,Georgia,serif;font-size:clamp(2rem,7vw,2.65rem);font-style:italic;font-weight:400;line-height:1.08;letter-spacing:-.045em}.gate-card__hint{max-width:20rem;margin:1.2rem auto 2.1rem;color:#6e5c53b8;font-size:.78rem;font-weight:300;line-height:1.75}.gate-form{display:grid;gap:.8rem}.gate-form label{color:#604e46bd;font-size:.7rem;letter-spacing:.07em;text-align:left}.gate-form__date-wrap{position:relative}.gate-form__date-wrap:after{position:absolute;top:50%;right:1rem;width:.42rem;height:.42rem;border-right:1px solid rgba(122,95,88,.45);border-bottom:1px solid rgba(122,95,88,.45);content:"";pointer-events:none;transform:translateY(-68%) rotate(45deg)}.gate-form input{width:100%;height:3.25rem;padding:0 1rem;border:1px solid rgba(187,147,143,.3);border-radius:.8rem;outline:none;background:#ffffffb8;color:#51453e;color-scheme:light;appearance:none;-webkit-appearance:none;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}.gate-form input:focus{border-color:#d88998b8;background:#fffffff0;box-shadow:0 0 0 4px #e097a41a}.gate-form input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;cursor:pointer;opacity:0}.gate-form button{height:3.2rem;margin-top:.35rem;border:1px solid rgba(54,67,82,.12);border-radius:.8rem;background:#273443;box-shadow:0 8px 20px #212c3924;color:#fffaf1f5;cursor:pointer;font-family:Lora,Georgia,serif;font-size:.92rem;font-style:italic;letter-spacing:.02em;transition:transform .22s ease,background .22s ease,box-shadow .22s ease,opacity .22s ease}.gate-form button:hover:not(:disabled){background:#202b38;box-shadow:0 11px 25px #212c3933;transform:translateY(-1px)}.gate-form button:focus-visible{outline:2px solid #d98999;outline-offset:3px}.gate-form button:disabled{cursor:default;opacity:.45}.gate-card--success .gate-form button{background:#5b6b5e;opacity:.92}.gate-card__feedback{min-height:1.25rem;margin:.9rem 0 0;color:transparent;font-family:Lora,Georgia,serif;font-size:.76rem;font-style:italic;line-height:1.4}.gate-card__feedback.is-error{color:#aa6571;animation:feedback-in .26s ease both}.gate-card__feedback.is-success{color:#657764;animation:feedback-in .42s ease both}.gate-footer{position:absolute;z-index:1;bottom:max(1rem,env(safe-area-inset-bottom));left:50%;display:flex;align-items:center;gap:.65rem;width:max-content;color:#9b8b7ead;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:.6rem;font-weight:300;letter-spacing:.05em;transform:translate(-50%)}.gate-footer a{display:inline-flex;align-items:center;color:inherit;text-decoration:none}.gate-footer a:hover{color:#8f7f73}.gate-footer a:focus-visible{border-radius:2px;outline:1px solid #d98999;outline-offset:4px}.gate-footer__separator{width:1px;height:.7rem;background:#9b8b7e4d}.gate-footer__police{gap:.26rem}.gate-footer__police img{width:.76rem;height:.84rem;object-fit:contain}@keyframes gate-card-in{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes feedback-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media(max-width:520px){.gate-page{padding:2rem 1rem 6.5rem}.gate-card{padding:2.7rem 1.4rem 2rem;border-radius:1.15rem}.gate-card__hint{margin-bottom:1.7rem}.gate-footer{flex-direction:column;gap:.3rem}.gate-footer__separator{display:none}}@media(max-height:650px){.gate-page{padding-top:1rem;padding-bottom:4.6rem}.gate-card{padding-top:1.8rem;padding-bottom:1.4rem}.constellation{margin-bottom:.75rem}.gate-card__hint{margin-top:.8rem;margin-bottom:1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}}
