:root{--brand-green:#03a049;--ink:#101010;--soft-paper:#f2f7f1}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);background:var(--soft-paper);margin:0}body.page-body{font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.page-shell,.taplink-root{width:100%}.taplink-root{font-family:var(--page-font,"Trebuchet MS", "Avenir Next", "Segoe UI", sans-serif)}.taplink-scene{background-color:var(--page-bg,#fff);min-height:100vh;color:var(--page-text,#101010);background-position:50%;background-repeat:no-repeat;background-size:cover;place-items:center;padding:28px 16px 40px;display:grid;position:relative;overflow:hidden}.taplink-scene:before{content:"";pointer-events:none;background:radial-gradient(circle at 10% 12%,#03a0491f,#0000 24%),radial-gradient(circle at 88% 8%,#03a0491a,#0000 22%),radial-gradient(circle at 82% 84%,#10101008,#0000 28%);position:absolute;inset:0}.taplink-root--preview .taplink-scene{border-radius:30px;min-height:100%;box-shadow:0 34px 82px #101c122e}.taplink-root--preview .taplink-scene:before{border-radius:30px}.taplink-card{z-index:1;width:min(100%, var(--content-width,430px));align-items:center;gap:var(--button-gap,16px);flex-direction:column;padding:20px 0 8px;display:flex;position:relative}.taplink-brand{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.taplink-logo-wrap{width:min(100%, var(--logo-width,208px))}.taplink-logo{object-fit:contain;filter:drop-shadow(0 16px 32px #0000000f);width:100%;height:auto}.taplink-headline{font-size:var(--title-size,34px);letter-spacing:.06em;text-transform:uppercase;margin:0;line-height:1.02}.taplink-subheadline{max-width:28rem;font-size:var(--subtitle-size,16px);color:#101010b8;margin:0;line-height:1.55}.taplink-button-stack{gap:var(--button-gap,16px);flex-direction:column;width:100%;display:flex}.taplink-button{width:min(100%, var(--button-width,410px));min-height:var(--button-height,76px);border-radius:var(--button-radius,999px);background:linear-gradient(180deg, #ffffff24, #0000000f), var(--button-bg,var(--brand-green));color:var(--button-text,#fff);-webkit-backdrop-filter:blur(10px);border:1px solid #ffffff3d;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-inline:auto;padding:12px 18px;transition:transform .14s,box-shadow .14s,filter .14s;display:grid;box-shadow:0 18px 36px #0135172e}.taplink-button:hover,.taplink-button:focus-visible{filter:saturate(1.05);transform:translateY(-2px);box-shadow:0 22px 42px #0135173d}.taplink-root--preview .taplink-button:hover,.taplink-root--preview .taplink-button:focus-visible{filter:none;transform:none}.taplink-button:focus-visible{outline-offset:3px;outline:3px solid #03a04929}.taplink-button__icon{background:var(--button-icon-bg,#0000002e);border:1px solid #fff3;border-radius:18px;place-items:center;width:48px;height:48px;display:grid}.taplink-button__icon svg{width:24px;height:24px}.taplink-button__content{flex-direction:column;gap:4px;min-width:0;display:flex}.taplink-button__label{font-size:var(--button-font-size,20px);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:1.1;display:block;overflow:hidden}.taplink-button__note{font-size:clamp(12px, calc(var(--button-font-size,20px) * .62), 16px);opacity:.86;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.taplink-button__arrow{opacity:.82;font-size:28px;line-height:1}.taplink-empty{text-align:center;background:#ffffffb8;border:1px dashed #1010102e;border-radius:24px;padding:24px 22px;font-size:15px;line-height:1.5}.no-script{color:#5b4c00;background:#fff7dd;border:1px solid #e4cc70;border-radius:18px;max-width:560px;margin:48px auto;padding:16px 20px}@media (width<=640px){.taplink-scene{padding-block:24px 34px;padding-inline:14px}.taplink-headline{letter-spacing:.05em}.taplink-button{gap:12px;padding-inline:14px}.taplink-button__icon{border-radius:16px;width:44px;height:44px}.taplink-button__arrow{font-size:24px}}
