@import url('/app/v1/ds/tokens.css');

:root{color-scheme:light;--preopen-ink:#151513;--preopen-muted:#6b6b6b;--preopen-soft:#f7eee8;--preopen-border:#e9e7e2;--preopen-action:#a7543d;--preopen-focus:#a7543d;font-family:var(--w-font-sans,"Poppins",system-ui,sans-serif);font-size:16px;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:#fff;color:var(--preopen-ink);font:var(--w-body,400 16px/1.5 "Poppins",system-ui,sans-serif)}
a{color:var(--preopen-action);text-underline-offset:.2em}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--preopen-focus);outline-offset:3px}
button,input{font:inherit}
.opening-page,.access-page{min-height:100svh;width:min(100%,760px);margin:0 auto;padding:clamp(24px,6vw,56px) clamp(20px,5vw,40px) 24px;display:flex;flex-direction:column}
.opening-page{min-height:100svh}
.brand-lockup{display:inline-flex;align-items:center;gap:12px;width:max-content}
.brand-name{font:600 16px/1.35 var(--w-font-sans,system-ui,sans-serif);letter-spacing:.01em}
.brand-name span{font-weight:400;color:var(--preopen-muted)}
.opening-card{width:100%;max-width:640px;margin:auto;padding:clamp(28px,6vw,60px) 0}
.eyebrow{margin:0 0 16px;color:var(--preopen-action);font:600 11px/1.45 var(--w-font-sans,system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase}
h1{margin:0;color:var(--preopen-ink);font:600 27px/1.2 var(--w-font-sans,system-ui,sans-serif);letter-spacing:-.025em}
h1 span{color:#767676;font-weight:400}
.opening-copy,.access-intro{max-width:560px;margin:22px 0 0;color:#343431;font:400 16px/1.6 var(--w-font-sans,system-ui,sans-serif)}
.access-note{margin:18px 0 24px;padding:14px 16px;border-left:3px solid var(--preopen-action);border-radius:0 10px 10px 0;background:#f7eee8;color:#343431;font:400 13px/1.55 var(--w-font-sans,system-ui,sans-serif)}
.primary-action,.google-action{min-height:48px;width:100%;display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid var(--preopen-action);border-radius:12px;background:var(--preopen-action);color:#fff;text-decoration:none;text-align:center;font:600 16px/1.4 var(--w-font-sans,system-ui,sans-serif);cursor:pointer;transition:background-color .16s ease,border-color .16s ease}
.primary-action:hover,.google-action:hover{background:#8f4734;border-color:#8f4734}
.primary-action:disabled{opacity:.62;cursor:wait}
.team-note{margin:10px 0 0;text-align:center;color:var(--preopen-muted);font:400 13px/1.5 var(--w-font-sans,system-ui,sans-serif)}
.opening-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--preopen-border);color:var(--preopen-muted);font:400 13px/1.5 var(--w-font-sans,system-ui,sans-serif)}
.opening-footer a,.recovery-link,.access-team-link a{color:var(--preopen-action);font-weight:600}
.back-link{display:inline-flex;align-items:center;gap:8px;width:max-content;color:var(--preopen-muted);font:600 13px/1.5 var(--w-font-sans,system-ui,sans-serif);text-decoration:none}
.access-card{width:100%;max-width:480px;margin:auto;padding:32px 0}
.access-card h1{margin-bottom:12px}
.access-intro{margin:0 0 24px;color:var(--preopen-muted);font:400 13px/1.55 var(--w-font-sans,system-ui,sans-serif)}
.google-action{background:#fff;color:var(--preopen-ink);border-color:var(--preopen-border)}
.google-action:hover{background:#faf9f7;border-color:#c9c5be}
.separator{display:flex;align-items:center;gap:14px;margin:20px 0;color:var(--preopen-muted);font:400 13px/1.4 var(--w-font-sans,system-ui,sans-serif)}
.separator::before,.separator::after{content:"";height:1px;flex:1;background:var(--preopen-border)}
form{display:grid;gap:9px}
label{margin-top:8px;color:#343431;font:600 13px/1.45 var(--w-font-sans,system-ui,sans-serif)}
input{width:100%;min-height:48px;padding:12px 14px;border:1px solid #767676;border-radius:10px;background:#fff;color:var(--preopen-ink);font:400 16px/1.4 var(--w-font-sans,system-ui,sans-serif)}
form .primary-action{margin-top:10px}
.recovery-link{display:inline-block;margin-top:18px;font:600 13px/1.5 var(--w-font-sans,system-ui,sans-serif)}
.text-action{display:block;width:100%;min-height:44px;margin-top:12px;border:0;background:transparent;color:var(--preopen-action);text-decoration:underline;text-underline-offset:.2em;font:600 13px/1.5 var(--w-font-sans,system-ui,sans-serif);cursor:pointer}
.access-team-link{margin:28px 0 0;padding-top:18px;border-top:1px solid var(--preopen-border);font:400 13px/1.5 var(--w-font-sans,system-ui,sans-serif)}
.status-message{margin:0 0 16px;color:var(--preopen-muted);font:400 13px/1.5 var(--w-font-sans,system-ui,sans-serif)}
.status-message:empty{display:none}
.status-message[data-kind="error"]{padding:12px 14px;border-left:3px solid #a6382b;border-radius:0 10px 10px 0;background:#fff4f2;color:#76251c}
.status-message[data-kind="success"]{padding:12px 14px;border-left:3px solid #386b4a;border-radius:0 10px 10px 0;background:#f1f8f3;color:#244b31}
.status-message[data-kind="info"]{padding:12px 14px;border-left:3px solid #767676;border-radius:0 10px 10px 0;background:#f7f7f5;color:#343431}
.helper-copy{margin:18px 0 0;color:var(--preopen-muted);font:400 13px/1.55 var(--w-font-sans,system-ui,sans-serif)}
.shared-content{display:grid;gap:18px;margin-top:20px}
.shared-day{padding:18px;border:1px solid var(--preopen-border);border-radius:14px;background:#fff}
.shared-day h2{margin:0;font:600 16px/1.4 var(--w-font-sans,system-ui,sans-serif)}
.shared-day ol{padding-left:22px;margin:12px 0 0}
.shared-day li+li{margin-top:12px}
.shared-day p{margin:4px 0 0;color:var(--preopen-muted);font:400 13px/1.5 var(--w-font-sans,system-ui,sans-serif)}
[hidden]{display:none!important}
@media(max-width:420px){.opening-page,.access-page{padding:22px 20px 20px}.opening-footer{align-items:flex-start;flex-direction:column}.opening-card{padding:40px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
