/*
 * botany.tech — the waitlist sheet, carried over from the holding page that
 * stood on botany.tech before the closed-beta landing (owner, 06.11.2026:
 * "the waitlist and the popup the last landing had"). Four steps in order
 * (follow on X, follow the founder, like and retweet the post, start the
 * Telegram bot), the Join button clothed in moss a quarter per step, then
 * the seat: Waitlist accepted, the card to share on X. waitlist.js runs it;
 * any [data-waitlist-open] opens it. The holding page's own rules, scoped
 * under .sheet so they stay off the site's buttons; its palette below.
 */
.sheet{--paper:#E9EAE2;--paper-2:#F4F5EF;--ink:#14160E;--ink-2:#1E2117;--olive:#3C4408;--brand:#2C2F21;--brand-hi:#3A3E2D;--lime:#8FA324;
  --sans:'Satoshi',-apple-system,'Helvetica Neue',Arial,sans-serif;--mono:'Roboto Mono',ui-monospace,SFMono-Regular,monospace;--doto:'Doto','Roboto Mono',monospace;
  font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}
.sheet *,.sheet *::before,.sheet *::after{box-sizing:border-box}
.sheet .cta{display:inline-flex;align-items:center;gap:7px;
    
    height:clamp(40px,3.4vh,46px);padding:0 clamp(19px,1.5vw,28px);
    
    border:1px solid var(--brand);border-radius:999px;
    background:var(--brand);color:var(--paper-2);
    font-family:var(--sans);font-size:clamp(14px,.95vw,16.5px);font-weight:700;line-height:24px;
    text-decoration:none;cursor:pointer;
    transition:background-color .18s ease,border-color .18s ease,transform .18s ease;}
.sheet .cta{position:relative;overflow:visible;isolation:isolate;}
.sheet .cta > span,
.sheet .cta > svg{position:relative;z-index:1;}
.sheet .cta:not(.ghost):hover{color:#F7F8EE;text-shadow:0 1px 3px rgba(8,12,4,.9), 0 0 12px rgba(8,12,4,.7);}
.sheet .cta canvas.mossC{position:absolute;left:-13px;top:-13px;
    width:calc(100% + 26px);height:calc(100% + 26px);
    z-index:-1;pointer-events:none;}
.sheet .cta:hover{background:var(--brand-hi);border-color:var(--brand-hi);transform:translateY(-1px);}
.sheet .cta:focus-visible{outline:2px solid var(--ink);outline-offset:3px;}
.sheet .cta .x{width:13px;height:13px;display:block;flex:none;}
.sheet .cta.ghost{background:transparent;color:var(--ink);border-color:rgba(20,22,14,.62);}
.sheet .cta.ghost:hover{background:rgba(83,93,10,.10);
    border-color:rgba(83,93,10,.75);
    color:var(--olive);
    text-shadow:none;
    transform:none;}
.sheet .cta.ghost canvas.mossC{display:none;}
.sheet[hidden]{display:none;}
.sheet{position:fixed;inset:0;z-index:6;display:flex;
    align-items:center;justify-content:center;padding:24px;
    background:rgba(233,234,226,.55);
    backdrop-filter:blur(9px) saturate(1.05);
    opacity:0;transition:opacity .26s ease;}
.sheet.on{opacity:1;}
.sheetCard{width:min(430px,92vw);padding:26px 26px 22px;position:relative;
    border-radius:20px;
    border:1px solid rgba(20,22,14,.16);
    background:linear-gradient(160deg, rgba(250,251,246,.80), rgba(233,236,225,.66));
    box-shadow:0 24px 70px rgba(20,26,10,.16), inset 0 1px 0 rgba(255,255,255,.65);
    transform:translateY(10px) scale(.985);
    transition:transform .3s cubic-bezier(.2,.8,.25,1);}
.sheet.on .sheetCard{transform:none;}
.sheetX{position:absolute;top:12px;right:14px;width:28px;height:28px;
    border:0;background:transparent;cursor:pointer;
    font-size:19px;line-height:1;color:rgba(20,22,14,.45);}
.sheetX:hover{color:var(--ink);}
.sheetKicker{margin:0;font-family:var(--doto);font-variation-settings:'ROND' 0;font-weight:700;
    font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--olive);}
.sheetTitle{margin:6px 0 18px;font-size:24px;font-weight:700;letter-spacing:-.02em;}
.sheet .prog{height:3px;border-radius:2px;margin:0 0 16px;
    background:rgba(20,22,14,.10);overflow:hidden;}
.sheet .prog i{display:block;height:100%;width:0;border-radius:2px;
    background:linear-gradient(90deg, var(--olive), var(--lime));
    transition:width .5s cubic-bezier(.2,.9,.25,1), background .3s ease;}
.sheet .steps{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:10px;}
.sheet .step{display:flex;align-items:center;gap:12px;
    padding:12px 12px 12px 14px;border-radius:13px;
    border:1px solid rgba(20,22,14,.13);
    background:rgba(255,255,255,.42);
    transition:border-color .2s ease,background-color .2s ease;}
.sheet .step.done{border-color:rgba(83,93,10,.45);background:rgba(147,163,44,.13);}
.sheet .step.locked{border-color:rgba(20,22,14,.09);background:rgba(255,255,255,.22);}
.sheet .step.locked .stepBody b,
.sheet .step.locked .stepNo{color:rgba(20,22,14,.34);}
.sheet .step.locked .stepBody span{color:rgba(20,22,14,.30);}
.sheet .step.locked .stepBtn{background:transparent;border-color:rgba(20,22,14,.14);
    color:rgba(20,22,14,.30);pointer-events:none;}
.sheet .step.checking{border-color:rgba(83,93,10,.30);}
.sheet .step.checking .stepBtn{background:transparent;border-color:rgba(20,22,14,.22);
    color:rgba(20,22,14,.42);pointer-events:none;}
.sheet .step.checking .stepBody span{color:var(--olive);}
.sheet .step{position:relative;overflow:hidden;}
.sheet .step.checking::after{content:'';position:absolute;left:0;top:0;height:2px;width:100%;
    background:linear-gradient(90deg, rgba(83,93,10,.65), rgba(147,163,44,.85));
    transform-origin:left center;
    animation:stepCheck 5s linear forwards;}
@keyframes stepCheck{ from{transform:scaleX(0);} to{transform:scaleX(1);} }
.sheet .stepNo{font-family:var(--mono);font-size:11px;color:rgba(20,22,14,.42);
    letter-spacing:.08em;flex:none;width:20px;}
.sheet .step.done .stepNo{color:var(--olive);}
.sheet .stepBody{flex:1;text-align:left;min-width:0;}
.sheet .stepBody b{display:block;font-size:14px;font-weight:700;}
.sheet .stepBody span{display:block;font-size:12px;line-height:1.45;color:var(--ink-2);}
.sheet .stepBtn{flex:none;height:32px;padding:0 15px;border-radius:999px;
    display:inline-flex;align-items:center;
    border:1px solid var(--brand);
    font-size:12.5px;font-weight:700;text-decoration:none;color:var(--paper-2);
    background:var(--brand);
    transition:background-color .18s ease,border-color .18s ease,color .18s ease;}
.sheet .stepBtn:hover{background:var(--brand-hi);border-color:var(--brand-hi);color:#F7F8EE;}
.sheet .step.done .stepBtn{background:transparent;border-color:rgba(83,93,10,.42);color:var(--olive);
    pointer-events:none;}
.sheet .step.done .stepBtn::before{content:'\2713\00a0';}
.sheetJoin{width:100%;justify-content:center;margin-top:2px;}
.sheet .cta[disabled],
.sheet .cta[disabled]:hover{background:rgba(20,22,14,.10);border-color:rgba(20,22,14,.16);
    color:rgba(20,22,14,.38);cursor:not-allowed;box-shadow:none;
    transform:none;text-shadow:none;}
.sheet #wlJoin[disabled] canvas.mossC{display:block;}
.sheet #wlJoin.mossy[disabled],
.sheet #wlJoin.mossy{color:#EFF1E4;
    text-shadow:0 1px 3px rgba(8,12,4,.92), 0 0 12px rgba(8,12,4,.6);}
.sheet .cta[disabled] canvas.mossC{display:none;}
.sheetHint{margin:9px 0 0;font-family:var(--mono);font-size:11px;
    letter-spacing:.06em;color:rgba(20,22,14,.45);}
.sheetHint.ready{color:var(--olive);}
.sheet.joined .steps,
.sheet.joined .sheetJoin,
.sheet.joined .sheetKicker{display:none;}
.sheet.joined .sheetCard{text-align:center;padding:26px 26px 24px;}
.sheet.joined .prog{display:none;}
.sheet.joined .sheetTitle{margin:4px 0 0;
    font-size:clamp(26px,3.1vw,34px);line-height:1.12;letter-spacing:-.028em;}
.sheet.joined .sheetTitle em{font-style:normal;color:var(--olive);}
.sheet.joined .sheetHint{display:none;}
.sheet .seatBody,
.sheet .seatShot{display:none;}
.sheet.joined .seatShot{display:block;width:100%;max-width:300px;aspect-ratio:1/1;
    margin:18px auto 0;border-radius:14px;
    background:rgba(20,22,14,.05);
    border:1px solid rgba(20,22,14,.10);
    object-fit:cover;}
.sheet.joined .seatShot:not([src]){background:linear-gradient(105deg,
      rgba(20,22,14,.045) 30%, rgba(20,22,14,.10) 50%, rgba(20,22,14,.045) 70%);
    background-size:280% 100%;
    animation:seatWait 1.5s ease-in-out infinite;}
@keyframes seatWait{ from{background-position:120% 0;} to{background-position:-20% 0;} }
.sheet.joined .seatBody{display:block;margin:10px auto 0;max-width:32ch;
    font-size:13.5px;line-height:1.6;color:var(--ink-2);}
.sheet .seatBody a{color:var(--olive);text-decoration:none;border-bottom:1px solid rgba(83,93,10,.4);}
.sheet .seatBody a:hover{border-bottom-color:var(--olive);}
.sheet .seatShare{display:none;}
.sheet.joined .seatShare{display:flex;gap:9px;justify-content:center;margin:20px 0 0;flex-wrap:wrap;}
.sheet .shareBtn{height:38px;padding:0 18px;font-size:13.5px;}
.sheet #wlCopyImg{gap:0;}
.sheet .shareBtn .swap{display:grid;place-items:center;}
.sheet .shareBtn .swap > span{grid-area:1/1;
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    white-space:nowrap;
    transition:opacity .17s ease, transform .24s cubic-bezier(.2,.9,.25,1);}
.sheet .shareBtn .swapB{opacity:0;transform:translateY(5px);}
.sheet .shareBtn .tick{width:14px;height:14px;flex:none;overflow:visible;}
.sheet .shareBtn .tick path{stroke-dasharray:18;stroke-dashoffset:18;
    transition:stroke-dashoffset .34s cubic-bezier(.2,.9,.25,1) .07s;}
.sheet .cta.ghost.copied,
.sheet .cta.ghost.copied:hover{color:var(--olive);
    border-color:rgba(83,93,10,.62);
    background:rgba(147,163,44,.16);}
.sheet .cta.ghost.copied .swapA{opacity:0;transform:translateY(-5px);}
.sheet .cta.ghost.copied .swapB{opacity:1;transform:none;}
.sheet .cta.ghost.copied .tick path{stroke-dashoffset:0;}
.sheet .shareNote{display:none;}
.sheet.joined .shareNote{display:block;margin:10px 0 0;line-height:1.55;min-height:3.1em;
    font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;
    color:rgba(20,22,14,.42);}
.sheet .shareNote.done{color:var(--olive);}

@media (max-width:640px){.sheet .cta{height:46px;padding:0 18px;font-size:14.5px;}
.sheet{padding:16px;}
.sheetCard{padding:22px 18px 18px;border-radius:18px;}
.sheetTitle{font-size:21px;margin-bottom:14px;}
.sheet .step{padding:11px 11px 11px 12px;gap:10px;}
.sheet .stepNo{width:16px;font-size:10px;}
.sheet .stepBody b{font-size:13.5px;}
.sheet .stepBody span{font-size:11.5px;}
.sheet .stepBtn{height:38px;padding:0 15px;}
.sheet .shareBtn{height:44px;padding:0 20px;}
.sheet .seatShare{gap:8px;}
.sheet.joined .sheetTitle{font-size:clamp(21px,6.2vw,27px);}
.sheet.joined .seatShot{max-width:232px;margin-top:14px;}
.sheet.joined .seatBody{font-size:12.5px;max-width:30ch;}
.sheet.joined .shareNote{font-size:10px;}}
@media (max-height:560px){.sheet .cta{height:38px;padding:0 17px;font-size:13.5px;}}
@media (max-height:760px){.sheetCard{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;}}
@media (hover:none){.sheet .cta:not(.ghost):hover{color:var(--paper-2);text-shadow:none;}
.sheet .cta:hover{transform:none;}
.sheet .stepBtn:hover{background:var(--brand);border-color:var(--brand);
                   color:var(--paper-2);}}


/* over the site's sticky header (z 30) */
.sheet{z-index:60}
.sheet .sheetTitle{color:var(--ink)}
.sheet p{margin-bottom:0}
@media (prefers-reduced-motion:reduce){.sheet,.sheet *{transition:none!important;animation:none!important}}
