:root{color-scheme:light;--paper:#f8f3e9;--ink:#342c3d;--muted:#736779;--night:#211d32;--gold:#e6cc9e}
*{box-sizing:border-box}body{margin:0;background:var(--night);color:var(--paper);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;min-height:100svh;position:relative;isolation:isolate}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b76c39;outline-offset:5px}[hidden]{display:none!important}.skip-link{position:absolute;top:8px;left:8px;z-index:5;padding:12px;background:var(--paper);color:var(--ink);transform:translateY(-180%)}.skip-link:focus{transform:none}
.garden{position:fixed;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(25,23,40,.35),rgba(25,23,40,.46) 45%,#211d32e8),linear-gradient(0deg,#211d32cf,transparent 45%,#211d326b),url('assets/dream-garden.jpg') center 57%/cover no-repeat}.garden:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 22% 52%,#b2a0cd10,transparent 65%)}
header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 5.5%}.wordmark{font-family:Georgia,serif;font-size:40px;letter-spacing:-.06em;line-height:1}.wordmark span{display:inline-block;color:var(--gold);font-size:28px;margin-left:6px;transform:translateY(-9px)}.back-link{font-size:12px;padding:12px 0;color:#e1d7e7}.back-link span{margin-left:12px;color:var(--gold)}main{display:grid;grid-template-columns:1fr 420px;gap:6vw;align-items:center;width:min(1100px,89%);margin:36px auto 28px;min-height:calc(100svh - 225px)}.welcome{padding:15px 0 45px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.22em;line-height:1.7}.welcome .eyebrow{color:#e0cfae;margin:0 0 28px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(56px,6.5vw,87px);line-height:1.08;margin:0 0 28px}h1 em{color:#e3caab;font-weight:400}.welcome-note{font-size:15px;line-height:1.9;color:#e8e0eb;margin:0;text-shadow:0 1px 12px #211d32}.handwritten{margin:42px 0 0;color:#e7d4bd;font:italic 18px Georgia,serif;transform:rotate(-3deg)}.handwritten span{display:inline-block;font-size:34px;vertical-align:middle;margin-right:12px}
.sign-in-card{position:relative;background:var(--paper);color:var(--ink);padding:40px 38px 28px;border:1px solid #fff8;border-radius:24px;box-shadow:0 30px 80px #08071350}.card-star{color:#91728d;font-size:42px;line-height:1;margin-bottom:22px}.sign-in-card .eyebrow{color:#7a647c;margin:0 0 10px}h2{font-size:46px;line-height:1.1;margin:0 0 12px}.card-intro{font-size:14px;color:var(--muted);margin:0 0 30px}label{display:block;font-size:12px;font-weight:600;margin-bottom:10px}input{width:100%;font-size:16px;background:#fffaf3;color:var(--ink);border:1px solid #cfc3ce;border-radius:10px;padding:15px 16px;min-height:52px}input::placeholder{color:#877b89;opacity:1}input:focus{border-color:#80618a}.field-hint{font-size:11px;line-height:1.6;margin:10px 0 22px;color:var(--muted)}.continue-button{border:0;border-radius:10px;width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:15px 20px;background:#51405d;color:#fff9ef;font-size:14px;transition:background .2s,transform .2s}.continue-button:hover{background:#655073;transform:translateY(-1px)}.continue-button span{color:#ead5b5;font-size:20px}.private-note{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;color:#776b7c;margin:20px 0 0}.private-note svg{width:15px;height:15px;flex-shrink:0}#sign-in-message{padding:14px;background:#ebe3ec;border-radius:8px;font-size:12px;line-height:1.6;color:#54415e;margin:16px 0 0}.no-script{font-size:12px;line-height:1.6}
footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 5.5% 28px;color:#d6cadf}footer>span{font:italic 14px Georgia,serif}footer button{border:1px solid #dfd2ed44;color:#ebdfef;background:#211d3280;border-radius:24px;padding:11px 15px;font-size:11px;min-height:44px}.glimmers{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.glimmers i{position:absolute;font-style:normal;color:#f1d6ad;animation:glimmer 6s ease-in-out infinite;opacity:.5}.glimmers i:nth-child(1){left:8%;top:28%;font-size:16px}.glimmers i:nth-child(2){left:45%;top:21%;font-size:9px;animation-delay:-3s}.glimmers i:nth-child(3){left:37%;top:76%;font-size:18px;animation-delay:-1s}.glimmers i:nth-child(4){left:12%;top:84%;font-size:9px;animation-delay:-4s}.glimmers i:nth-child(5){left:58%;top:62%;font-size:15px;animation-delay:-2s}.glimmers i:nth-child(6){left:86%;top:14%;font-size:20px;animation-delay:-5s}@keyframes glimmer{0%,100%{opacity:.2;transform:translateY(0) scale(.9)}50%{opacity:.75;transform:translateY(-7px) scale(1.12)}}.motion-off .glimmers i{animation:none;opacity:.35}.motion-off .continue-button{transition:none}
@media(max-width:820px){main{gap:5vw;grid-template-columns:1fr 370px}.sign-in-card{padding:32px 28px 25px}h1{font-size:57px}.welcome-note{font-size:13px}.handwritten{font-size:15px}}
@media(max-width:680px){header{padding:23px 6%}.wordmark{font-size:34px}.back-link{font-size:11px}.back-link span{margin-left:5px}main{display:block;width:min(430px,88%);margin:18px auto 20px;min-height:0}.welcome{padding:10px 3px 28px}.welcome .eyebrow{font-size:9px;margin-bottom:16px}h1{font-size:53px;line-height:1.05;margin-bottom:18px}.welcome-note{font-size:13px;line-height:1.65}.welcome-note br:first-child{display:none}.welcome-note br:first-child:after{content:' '}.handwritten{display:none}.sign-in-card{padding:27px 26px 23px;border-radius:20px}.card-star{position:absolute;right:28px;top:30px;font-size:36px}h2{font-size:39px}.card-intro{margin-bottom:25px}.sign-in-card .eyebrow{font-size:9px;margin-bottom:9px}.private-note{margin:18px 0}.garden{background-position:center;background-image:linear-gradient(#211d3259,#211d32cc 54%,#211d32f2),url('assets/dream-garden.jpg')}footer{padding:12px 6% 22px}footer>span{font-size:12px}.glimmers i:nth-child(6){left:90%;top:22%}}
@media(prefers-reduced-motion:reduce){.glimmers i{animation:none;opacity:.35}.continue-button{transition:none}.continue-button:hover{transform:none}}
