/* TapLink V2.0: public page, accessible theme fixes and mode editor */
.taplink-public .topbar,.taplink-public .footer{display:none!important}.taplink-public{background:#f2f5fb}.taplink-public-page{min-height:100dvh;display:grid;place-items:center;padding:28px 16px}.taplink-public-shell{width:min(100%,450px);text-align:center;background:#fff;border:1px solid #e2e7f0;border-radius:24px;padding:32px 22px;box-shadow:0 15px 45px #12244a12;color:#102247}.taplink-public-symbol{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 18px;border-radius:20px;background:#102247;color:#eab94f;font-size:34px}.taplink-public-shell h1{font-size:clamp(26px,7vw,34px);margin:0 0 12px}.taplink-public-shell p{color:#52617a;margin:0 0 25px;overflow-wrap:anywhere}.taplink-public-buttons{display:grid;gap:12px;margin:24px 0}.taplink-public-buttons a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 18px;border-radius:14px;background:#102247;color:white;text-decoration:none;font-weight:700;text-align:left;overflow-wrap:anywhere}.taplink-public-buttons a:focus-visible{outline:3px solid #eab94f;outline-offset:3px}.taplink-public-shell small{color:#5d6a80}.taplink-mode-card{padding:16px;border:1px solid var(--line,#dbe3ed);border-radius:16px;background:var(--surface,#fff)}.taplink-link-row{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-bottom:10px}.taplink-hint{color:var(--muted,#61708a);font-size:13px}.taplink-page-fields{display:none}.taplink-mode-card[data-mode="page"] .taplink-page-fields{display:block}.taplink-mode-card[data-mode="page"] .taplink-direct-fields{display:none}.customer-app[data-theme="dark"] .taplink-mode-card{background:#18253e;color:#f3f6ff;border-color:#3a4c68}.customer-app[data-theme="dark"] .taplink-mode-card input,.customer-app[data-theme="dark"] .taplink-mode-card textarea,.customer-app[data-theme="dark"] .taplink-mode-card select{background:#101c33!important;color:#f5f7ff!important;border-color:#52617a!important}.customer-app[data-theme="dark"] .taplink-mode-card input::placeholder{color:#a8b6ce}.customer-app[data-theme="dark"] .performance-card,.customer-app[data-theme="dark"] .performance-card *,.customer-app[data-theme="dark"] .ranking-card,.customer-app[data-theme="dark"] .ranking-card *{color:inherit}.customer-app[data-theme="dark"] main .performance-card,.customer-app[data-theme="dark"] main .ranking-card{background:#18253e;color:#f4f7ff}.customer-app[data-theme="dark"] main a:not(.btn){text-decoration-thickness:1px}@media(max-width:540px){.taplink-link-row{grid-template-columns:1fr}.taplink-public-shell{padding:26px 18px}}

/* V2.1: editor preview and public themes */
.taplink-preview-area{margin:16px 0 20px}.taplink-preview-caption{font-size:12px;font-weight:700;margin-bottom:9px;color:var(--muted,#718096)}.taplink-preview-card{--tl-bg:#102247;--tl-text:#fff;--tl-button:#fff;--tl-button-text:#102247;max-width:360px;margin:auto;border-radius:24px;padding:25px 20px;background:var(--tl-bg);color:var(--tl-text);text-align:center;box-shadow:0 12px 28px #0002}.taplink-preview-avatar{background:#e9b84d;color:#102247;width:54px;height:54px;border-radius:18px;display:grid;place-items:center;margin:0 auto 12px;font-size:26px}.taplink-preview-title{display:block;font-size:21px;overflow-wrap:anywhere}.taplink-preview-description{font-size:13px;color:inherit;opacity:.83;margin:9px 0 15px;overflow-wrap:anywhere}.taplink-preview-buttons{display:grid;gap:8px;margin:16px 0}.taplink-preview-buttons div{padding:11px 13px;border-radius:11px;background:var(--tl-button);color:var(--tl-button-text);font-weight:700;font-size:13px;text-align:left;overflow-wrap:anywhere}.taplink-preview-card small{color:inherit;opacity:.7}.taplink-preview-card[data-preview-theme=light],.taplink-public-shell[data-page-theme=light]{--tl-bg:#fff;--tl-text:#102247;--tl-button:#edf2fa;--tl-button-text:#102247}.taplink-preview-card[data-preview-theme=dark],.taplink-public-shell[data-page-theme=dark]{--tl-bg:#101827;--tl-text:#f8fafc;--tl-button:#293b55;--tl-button-text:#f8fafc}.taplink-public-shell[data-page-theme]{background:var(--tl-bg,#102247);color:var(--tl-text,#fff)}.taplink-public-shell[data-page-theme] p,.taplink-public-shell[data-page-theme] small{color:var(--tl-text,#fff);opacity:.8}.taplink-public-shell[data-page-theme] .taplink-public-buttons a{background:var(--tl-button,#fff);color:var(--tl-button-text,#102247)}.taplink-public-shell[data-page-theme=navy]{--tl-bg:#102247;--tl-text:#fff;--tl-button:#fff;--tl-button-text:#102247}.taplink-public-shell[data-page-theme=dark] .taplink-public-symbol{background:#293b55}.taplink-public-shell[data-page-theme=light] .taplink-public-symbol{background:#102247}.taplink-public-shell[data-page-theme]{transition:background .2s,color .2s}@media(max-width:540px){.taplink-preview-card{padding:22px 15px}}

/* V2.2: accessible contrast, editable button styles and branded page */
.taplink-public-logo{display:block;width:88px;height:88px;object-fit:contain;margin:0 auto 18px;border-radius:18px;background:#fff;padding:6px}
.taplink-public-shell[data-page-theme] .taplink-public-buttons a{background:var(--tap-button-custom,#E8B54C);color:var(--tap-ink-custom,#101F40);text-align:var(--tap-align,center);justify-content:center;position:relative;padding-right:38px}
.taplink-public-buttons a span:last-child{position:absolute;right:14px}
.taplink-brand-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.taplink-brand-fields label{min-width:0}.taplink-brand-fields input[type=color]{height:46px;width:100%;padding:4px;cursor:pointer}
.taplink-preview-buttons div{background:var(--tap-button-custom,#E8B54C)!important;color:var(--tap-ink-custom,#101F40)!important;text-align:var(--tap-align,center)!important}
.customer-app[data-theme=dark] main .tap-edit-summary>div,.customer-app[data-theme=dark] main .tap-edit-summary>div *{background:#1B2A44!important;color:#F5F7FF!important}
.customer-app[data-theme=dark] main .tap-edit-summary>div span{color:#C5D2E9!important}
.customer-app[data-theme=dark] main .tap-edit-summary>div strong,.customer-app[data-theme=dark] main .tap-edit-summary>div code{color:#FFFFFF!important}
.customer-app[data-theme=dark] main .tap-form-card,.customer-app[data-theme=dark] main .tap-form-card label,.customer-app[data-theme=dark] main .tap-form-card small{color:#F3F7FF}
.customer-app[data-theme=dark] main .tap-form-card input,.customer-app[data-theme=dark] main .tap-form-card select,.customer-app[data-theme=dark] main .tap-form-card textarea{background:#101D33;color:#FFF;border-color:#536580}
.customer-app[data-theme=dark] main .tap-form-card input::placeholder{color:#B8C6DD}
.customer-app[data-theme=dark] main .tap-form-card .taplink-preview-card{color:var(--tl-text)!important}
.customer-app[data-theme=dark] main .tap-form-card .taplink-preview-card *{color:inherit}
.customer-app[data-theme=dark] main .tap-form-card .taplink-preview-buttons div{color:var(--tap-ink-custom,#101F40)!important}
.customer-app[data-theme=dark] main .plan-features,.customer-app[data-theme=dark] main .performance-card,.customer-app[data-theme=dark] main .ranking-card{color:#F3F7FF}
.customer-app[data-theme=dark] main .plan-features h2,.customer-app[data-theme=dark] main .performance-card h2,.customer-app[data-theme=dark] main .ranking-card h2{color:#14233F!important}
@media(max-width:620px){.taplink-brand-fields{grid-template-columns:1fr}}
