/* Entry experience: same tokens and visual language as the restaurant workspace. */
body.entry-page{display:grid;grid-template-columns:minmax(350px,43%) minmax(0,1fr);align-items:start;justify-content:normal;min-height:100vh;padding:0;background:var(--bg);color:var(--text)}
.entry-story{position:sticky;top:0;min-height:100vh;height:100dvh;padding:38px clamp(28px,4.3vw,76px);display:flex;flex-direction:column;overflow:hidden;color:#f2f8f5;background:radial-gradient(ellipse at 15% 90%,#376e554f,transparent 65%),#15272e;isolation:isolate}.entry-story:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#b0d1c217 .7px,transparent .7px);background-size:22px 22px;z-index:-1;mask-image:linear-gradient(transparent,#000)}
.entry-logo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;text-decoration:none;color:#f0f7f3;font-size:21px;letter-spacing:-.7px;font-weight:650}.entry-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #78a98e;border-radius:10px;color:#bee7ce;font-size:22px}.entry-logo small{display:block;width:100%;padding-left:44px;font-size:9px;letter-spacing:2.5px;color:#91aaa4;font-weight:500}.entry-story-content{margin:auto 0;padding:48px 0 30px}.entry-eyebrow{color:#a2c7b5;font-size:9px;letter-spacing:1.8px;font-weight:600}.entry-story h2{font-size:clamp(32px,3.5vw,54px);line-height:1.09;letter-spacing:-2px;font-weight:550;margin:20px 0}.entry-story-content>p{font-size:15px;line-height:1.7;color:#aac0ba;max-width:310px;margin:0 0 34px}.entry-story-footer{font-size:11px;color:#91aaa4;margin:0;padding-top:22px}
.entry-illustration{border:1px solid #b7dcc129;border-radius:18px;background:linear-gradient(135deg,#ffffff0b,#ffffff03);box-shadow:0 20px 50px #081a2026;transform:perspective(900px) rotateY(-4deg);max-width:390px}.illustration-heading,.illustration-footer{display:flex;justify-content:space-between;align-items:center;padding:17px 19px;font-size:11px;color:#cbddd3}.illustration-dot{width:6px;height:6px;border-radius:50%;background:#a7d9b8}.illustration-footer{font-size:10px;color:#9ab6a7}
body.entry-page>.entry-main{width:100%;max-width:540px;margin:auto;min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:54px clamp(26px,4.5vw,72px)}.entry-page .entry-page-label{font-size:10px;letter-spacing:2px;color:var(--accent);font-weight:650;margin:0 0 24px}.entry-page h1{font-size:clamp(29px,3vw,39px);line-height:1.15;letter-spacing:-1.35px;font-weight:600;margin:0 0 14px}.entry-page .subtitle{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 30px}.entry-page label{font-size:12px;font-weight:600;color:#3e555d;margin-bottom:8px}.entry-page input:not([type=radio]):not([type=checkbox]),.entry-page select,.entry-page textarea{font-size:15px;border:1px solid #dce4e2;border-radius:11px;background:#fff;color:var(--text);padding:13px 14px;min-height:48px;transition:border-color .15s,box-shadow .15s;width:100%;margin-bottom:22px;box-shadow:0 2px 3px #193a4403}.entry-page input::placeholder,.entry-page textarea::placeholder{color:#94a39f;font-size:14px}.entry-page input:focus,.entry-page select:focus,.entry-page textarea:focus{border-color:#62a78b;box-shadow:0 0 0 3px #5aa98714;outline:2px solid transparent}.entry-page input:focus-visible,.entry-page select:focus-visible,.entry-page textarea:focus-visible{outline:2px solid #438c72;outline-offset:2px}.entry-page button{min-height:46px;font-size:14px;border-radius:11px}.entry-page button[type=submit],.entry-page .primary{background:var(--accent);color:#fff;box-shadow:0 3px 6px #14553c13}.entry-page button[type=submit]:hover,.entry-page .primary:hover{background:#0d644c;opacity:1}.entry-page .register-section,.entry-page .login-section{border-color:#e1e8e4;margin-top:26px;padding-top:22px}.entry-page .register-text,.entry-page .login-text,.entry-page .password-note,.entry-page .forgot,.entry-page .back{color:#60776d;font-size:12px}.entry-page .forgot{width:auto;margin:12px auto 0;min-height:44px;padding:8px 12px}.entry-page .forgot:hover,.entry-page .back:hover{color:var(--accent)}.entry-page .register-button,.entry-page .login-button{border:1px solid #d4dfd8;border-radius:10px;color:#38574a;padding:11px;background:#fff;font-size:13px}.entry-page .register-button:hover,.entry-page .login-button:hover{background:#edf4ef;border-color:#9fbdab}.entry-page .message{line-height:1.6;border-radius:10px;font-size:13px;overflow-wrap:anywhere}.entry-page .password-note{margin:-12px 0 23px;line-height:1.6}.entry-password{position:relative}.entry-page .entry-password input{padding-right:82px!important}.entry-page .password-toggle{position:absolute;right:7px;top:3px;width:auto;min-height:41px;border:0;background:transparent;color:#5a7568;padding:6px 10px;font-size:11px;font-weight:500;box-shadow:none}.entry-page .password-toggle:hover{color:var(--accent);background:#edf4ef}.entry-back{display:block;font-size:12px;text-decoration:none;color:var(--accent);margin-bottom:22px}.entry-page .back{display:block;text-align:center;margin-top:24px;text-decoration:none}
body.entry-onboarding{grid-template-columns:minmax(290px,31%) minmax(0,1fr)}body.entry-onboarding>.entry-main{max-width:850px;padding:48px clamp(26px,5vw,80px);margin:0 auto}.entry-onboarding .entry-story{padding-inline:clamp(25px,3.4vw,55px)}.entry-onboarding .entry-story h2{font-size:clamp(30px,3vw,44px)}.entry-onboarding .entry-illustration{margin-top:38px}.entry-onboarding .entry-story-content>p{font-size:14px}.entry-page .progress{display:none}.entry-step-caption{font-size:11px;color:var(--muted);margin:0 0 13px}.entry-steps{list-style:none;display:flex;gap:6px;margin:0 0 35px;padding:0;counter-reset:step}.entry-steps li{flex:1;border-top:3px solid #dce5df;padding-top:10px;font-size:10px;color:#687b72;min-width:0}.entry-steps li.done{border-color:#90bca3}.entry-steps li[aria-current=step]{border-color:var(--accent);color:var(--accent);font-weight:650}.entry-page .field{margin-bottom:22px}.entry-page .field>input,.entry-page .field>select,.entry-page .field>textarea{margin-bottom:0}.entry-page .options{gap:12px}.entry-page .option{padding:19px;border-radius:13px;background:#fff;border:1px solid #dce5df;box-shadow:0 2px 4px #193a4403}.entry-page .option:hover{border-color:#9abcaa}.entry-page .option.selected{border-color:var(--accent);background:#edf6f0;box-shadow:0 0 0 1px var(--accent)}.entry-page .option-title{color:var(--text);font-size:14px}.entry-page .option-text,.entry-page .schedule-service-title,.entry-page .auth-note{color:#65786f;font-size:12px;line-height:1.6}.entry-page .schedule-day{background:white;padding:20px;border:1px solid #dee7e0;border-radius:13px;margin:12px 0}.entry-page .schedule-day-title{font-size:13px}.entry-page .schedule-type-option{font-size:12px}.entry-page .schedule-times input{margin-bottom:5px!important}.entry-page .summary{background:#fff;border:1px solid #dce5df;border-radius:15px;padding:24px;font-size:14px}.entry-page .buttons{padding-top:18px;border-top:1px solid #e1e8e4;margin-top:30px}.entry-page .secondary{background:#eaf0ec;color:#3c564a}.entry-page .secondary:hover{background:#dce8e0}.entry-page .step.active{animation:entry-in .2s ease both}.entry-page .auth-screen{padding:8px 0}.entry-page .auth-note{margin-top:22px}
@keyframes entry-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){body.entry-page>.entry-main{max-width:610px}body.entry-onboarding>.entry-main{max-width:900px}}
@media(max-width:1000px){body.entry-page{grid-template-columns:38% minmax(0,1fr)}.entry-story{padding:30px 25px}.entry-story h2{font-size:33px}.entry-illustration{display:none}.entry-story-content{padding:40px 0}.entry-logo{font-size:19px}body.entry-onboarding{grid-template-columns:270px minmax(0,1fr)}}
@media(max-width:700px){body.entry-page,body.entry-onboarding{display:block}.entry-story{position:relative;min-height:0;height:auto;padding:23px 24px;background:radial-gradient(ellipse at 95% 0,#46866445,transparent 65%),#15272e}.entry-logo{font-size:18px}.entry-logo small{width:auto;margin-left:auto;padding:0;font-size:8px;letter-spacing:1.5px}.entry-mark{height:29px;width:29px;font-size:18px}.entry-story-content,.entry-story-footer{display:none}body.entry-page>.entry-main,body.entry-onboarding>.entry-main{padding:34px 25px 45px;max-width:550px;margin:0 auto}.entry-page h1{font-size:31px}.entry-page .entry-page-label{font-size:9px;margin-bottom:19px}.entry-page .subtitle{font-size:13px;margin-bottom:27px}.entry-step-caption{font-size:11px}.entry-steps{margin-bottom:29px;gap:5px}.entry-steps li{font-size:9px;padding-top:9px}.entry-page .schedule-day{padding:15px}.entry-page .schedule-type{gap:6px}.entry-page .schedule-type-option{font-size:11px;padding:9px 6px}.entry-page .buttons{position:relative}.entry-page .option{padding:17px}.entry-page input:not([type=radio]):not([type=checkbox]),.entry-page select,.entry-page textarea{font-size:16px}.entry-page .summary{padding:18px}}
@media(prefers-reduced-motion:reduce){.entry-page .step.active{animation:none}}

.illustration-conversation{padding:22px 19px;border-block:1px solid #ffffff0b}.conversation-label{font-size:8px;letter-spacing:1.5px;color:#9fbdae}.conversation-bubble{background:#d4ebd915;border:1px solid #a7cbb834;border-radius:12px 12px 12px 3px;padding:13px;margin:10px 0 24px;color:#deeee3;font-size:12px;line-height:1.6}.conversation-route{display:flex;align-items:center;justify-content:space-between;gap:6px;color:#a6c9b5;font-size:9px}.conversation-route span:nth-child(odd){border:1px solid #aac8b532;border-radius:6px;padding:7px 6px;background:#0000000a}.conversation-note{font-size:10px;line-height:1.6;color:#a4bfb1;margin:20px 0 0}
.entry-demo-controls{padding:0 18px 16px}.entry-demo-controls>div:last-child{display:flex;gap:8px;margin-top:10px}.entry-page .entry-demo-controls button{width:auto;background:#c4e4d410;border:1px solid #b9dec82e;border-radius:8px;color:#d4e8dc;padding:6px 12px;min-height:36px;font-size:11px;box-shadow:none}.entry-page .entry-demo-controls button:hover{background:#b9deca25}.demo-caption{font-size:9px;color:#adc7b7}.entry-story-content{padding-top:25px;padding-bottom:20px}.entry-story{height:auto;min-height:100dvh}.entry-story-content>p{margin-bottom:25px}.entry-illustration{transform:none}

@media(max-width:700px){.entry-story{min-height:0;height:auto}}
