:root{font-family:"Helvetica Neue",Arial,sans-serif;color:#350503;background:#f8d68f;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}#app{max-width:720px;margin:auto;min-height:100vh;padding:calc(16px + var(--tg-safe-area-inset-top,0px)) 20px calc(100px + var(--tg-safe-area-inset-bottom,0px))}.brand{font-size:14px;font-weight:800;letter-spacing:.015em;display:flex;align-items:center;justify-content:space-between}.brand .mark{font-size:24px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:800;margin:34px 0 12px}h1{font-size:clamp(42px,11vw,68px);line-height:.94;letter-spacing:-.065em;margin:0 0 22px;font-weight:800}h1 em,.serif{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.045em}.hero{padding:26px 25px 30px;background:#350503;color:#f8d68f;border-radius:28px;min-height:230px;position:relative;overflow:hidden}.hero .flower{position:absolute;right:-27px;bottom:-42px;color:#f9b7dd;font-size:190px;line-height:1;transform:rotate(-18deg);opacity:.93}.hero h1,.hero p{position:relative;z-index:1;max-width:360px}.hero p{font-size:15px;line-height:1.4;margin:0;max-width:240px}h2{font-size:26px;line-height:1.04;letter-spacing:-.035em;margin:28px 0 16px}p{line-height:1.45}.card{border-radius:22px;background:#fff7e7;padding:20px;margin:12px 0;box-shadow:0 2px 0 rgba(53,5,3,.07)}.card.pink{background:#f9b7dd}.card.green{background:#198f51;color:white}.card.yellow{background:#f3c11b}.card h3{font-size:22px;letter-spacing:-.025em;margin:0 0 8px}.card p{margin:5px 0 15px}.muted{opacity:.68;font-size:13px}.row{display:flex;justify-content:space-between;gap:12px;align-items:center}.stack{display:grid;gap:10px}.button{background:#350503;color:#f8d68f;border:0;border-radius:100px;padding:13px 20px;font-weight:800;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center}.button.secondary{background:#f8d68f;color:#350503}.button.ghost{background:transparent;border:1px solid #350503;color:#350503}.button.small{font-size:13px;padding:9px 14px;min-height:38px}.button:disabled{opacity:.45}.wide{width:100%}.nav{position:fixed;z-index:5;bottom:calc(12px + var(--tg-safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);width:min(calc(100% - 24px),696px);background:#350503;color:#f8d68f;border-radius:28px;padding:7px;display:flex;gap:3px;box-shadow:0 10px 28px #35050344}.nav button{flex:1;border:0;background:transparent;color:inherit;padding:10px 2px;border-radius:20px;font-size:11px;font-weight:700}.nav button.active{background:#f8d68f;color:#350503}.nav span{display:block;font-size:21px;margin-bottom:2px}label{display:block;font-size:13px;font-weight:800;margin:12px 0 5px}input,textarea,select{width:100%;padding:13px;border:1px solid #35050355;border-radius:13px;background:#fffdf6;color:#350503}textarea{min-height:100px;resize:vertical}.form{padding:4px 0 18px}.notice{background:#f9b7dd;padding:12px 16px;border-radius:14px;margin:12px 0}.error{background:#f65009;color:white}.empty{background:#fff7e7;border-radius:22px;padding:22px}.separator{height:1px;background:#35050333;margin:16px 0}.star{color:#f65009;font-size:26px}.list{display:grid;gap:9px}.slot{display:flex;justify-content:space-between;align-items:center;background:#fff7e7;border-radius:18px;padding:15px;gap:12px}.slot strong{display:block;font-size:19px}.tabs{display:flex;gap:6px;overflow-x:auto;padding:2px 0 8px}.tabs button{border:1px solid #350503;border-radius:100px;background:transparent;padding:9px 12px;white-space:nowrap}.tabs button.active{background:#350503;color:#f8d68f}a{color:inherit}a.link{font-weight:700}dialog{border:0;border-radius:24px;padding:24px;background:#fff7e7;color:#350503;width:min(92vw,420px);box-shadow:0 20px 80px #35050355}dialog::backdrop{background:#35050399}.demo{margin-top:16px;font-size:11px;opacity:.7}.demo button{border:0;background:transparent;text-decoration:underline;color:inherit;padding:5px}@media(min-width:650px){#app{padding-left:36px;padding-right:36px}.hero{min-height:260px}}

/* Telegram viewport and system gesture space, including devices with a second content inset. */
#app{padding-top:calc(16px + var(--tg-safe-area-inset-top,0px) + var(--tg-content-safe-area-inset-top,0px));padding-bottom:calc(120px + var(--tg-safe-area-inset-bottom,0px))}
.nav{overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.nav::-webkit-scrollbar{display:none}
.nav button{min-width:58px;white-space:nowrap;min-height:55px}
.nav button:focus-visible,.button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.tabs button:focus-visible{outline:3px solid #f65009;outline-offset:2px}
.day-heading{font-size:17px;text-transform:capitalize;margin:24px 0 10px}
.slot+.slot{margin-top:8px}
dialog{max-height:min(85dvh,750px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(24px + var(--tg-safe-area-inset-bottom,0px))}
dialog .row{position:sticky;bottom:0;padding:12px 0 0;background:#fff7e7}
.form-error:not(:empty){background:#f65009;color:white;padding:12px;border-radius:12px;margin-top:12px}
.demo button[aria-current="true"]{font-weight:800;text-decoration:none;border-radius:10px;background:#350503;color:#f8d68f}
@media(max-width:370px){#app{padding-left:14px;padding-right:14px}.nav{width:calc(100% - 12px)}.slot{padding:12px}.slot strong{font-size:17px}}
