.flowties-account{display:flex;align-items:center;gap:8px;position:relative;min-width:0}
.flowties-account .btn{min-height:40px;border:2px solid var(--ink);background:white;color:var(--ink);padding:0 13px;font-weight:800}
.flowties-account .btn.primary{background:var(--ink);color:white}
.flowties-account-button{white-space:nowrap}
.flowties-guest-chip{font:500 .64rem var(--mono);text-transform:uppercase;border:1px solid var(--ink);padding:7px 9px;background:var(--acid,#efff3e);white-space:nowrap}
.flowties-user-button{min-height:42px;border:2px solid var(--ink);background:var(--white,#fff);display:flex;align-items:center;gap:8px;padding:0 11px;font-weight:800;max-width:190px}
.flowties-user-button>span:first-child{display:grid;place-items:center;width:25px;height:25px;background:var(--acid,#efff3e);border:1px solid var(--ink);flex:0 0 auto}
.flowties-user-button>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.flowties-user-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:1000;width:240px;border:2px solid var(--ink);background:white;box-shadow:7px 7px 0 var(--ink);padding:14px}
.flowties-user-menu strong,.flowties-user-menu small{display:block;overflow-wrap:anywhere}
.flowties-user-menu small{color:var(--muted);margin:3px 0 12px}
.flowties-user-menu a,.flowties-user-menu button{display:block;width:100%;border:0;border-top:1px solid #ddd;background:none;padding:11px 0;text-align:left;font-weight:800}
.flowties-user-menu[hidden]{display:none}
.flowties-modal-open{overflow:hidden}
.flowties-auth-backdrop{position:fixed;inset:0;z-index:10000;background:rgba(17,17,17,.78);backdrop-filter:blur(9px);display:grid;place-items:center;padding:18px;overflow:auto}
.flowties-auth-modal{position:relative;width:min(520px,100%);max-height:calc(100dvh - 36px);overflow:auto;border:2px solid var(--ink);background:var(--paper,#f5f2e9);box-shadow:12px 12px 0 var(--acid,#efff3e);padding:clamp(24px,5vw,42px)}
.flowties-auth-modal .btn,.flowties-gate-card .btn{min-height:42px;border:2px solid var(--ink);background:white;color:var(--ink);padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}
.flowties-auth-modal .btn.primary{background:var(--ink);color:white}.flowties-gate-card .btn.acid{background:var(--acid,#efff3e);color:var(--ink)}
.flowties-auth-modal .input{width:100%;border:2px solid var(--ink);background:white;color:var(--ink);padding:13px 14px;outline:0;border-radius:0}
.flowties-auth-modal .input:focus{box-shadow:4px 4px 0 var(--blue,#315eff)}
.flowties-auth-modal .eyebrow,.flowties-gate-card .eyebrow{font:500 .7rem var(--mono);text-transform:uppercase;letter-spacing:.12em}
.flowties-auth-close{position:absolute;right:15px;top:15px;width:38px;height:38px;border:2px solid var(--ink);background:white;font-size:1.5rem;line-height:1}
.flowties-auth-brand{display:flex;align-items:center;gap:10px;margin:0 50px 28px 0}
.flowties-auth-brand>span:last-child{display:flex;flex-direction:column;line-height:1}
.flowties-auth-brand small{font:500 .62rem var(--mono);text-transform:uppercase;color:var(--muted);margin-top:5px}
.flowties-auth-modal h2{font-size:clamp(2.1rem,7vw,3.6rem);letter-spacing:-.065em;line-height:.95;margin:10px 0 13px}
.flowties-auth-modal>p:not(.eyebrow){line-height:1.55}
.flowties-google{width:100%;margin-top:18px;background:white}
.flowties-google-g{font-family:Arial,sans-serif;color:#4285f4;font-size:1.1rem}
.flowties-auth-divider{display:flex;align-items:center;gap:12px;font:500 .65rem var(--mono);text-transform:uppercase;color:var(--muted);margin:17px 0}
.flowties-auth-divider::before,.flowties-auth-divider::after{content:"";height:1px;background:#bbb;flex:1}
.flowties-auth-form{display:grid;gap:13px}
.flowties-auth-form>label:not(.flowties-auth-check){display:grid;gap:7px;font:500 .69rem var(--mono);text-transform:uppercase}
.flowties-auth-check{display:flex;gap:9px;align-items:flex-start;font-size:.78rem;line-height:1.4}
.flowties-auth-check input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--blue,#315eff)}
.flowties-auth-submit{width:100%;margin-top:3px}
.flowties-auth-status{min-height:20px;font:500 .72rem var(--mono);margin:13px 0 0!important}
.flowties-auth-status[data-state="error"]{color:#b62418}
.flowties-auth-status[data-state="success"]{color:#087e4c}
.flowties-auth-switch{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}
.flowties-auth-switch button{border:0;background:none;padding:5px 0;text-decoration:underline;font-weight:800;font-size:.77rem}
.flowties-auth-legal{border-top:1px solid #bbb;padding-top:14px;margin:15px 0 0!important;font-size:.72rem;color:var(--muted)}
.tool-ui.flowties-tool-gated{position:relative;min-height:480px;isolation:isolate}
.tool-ui.flowties-tool-gated>*:not(.flowties-access-gate){filter:blur(2px);opacity:.24;pointer-events:none;user-select:none}
.flowties-access-gate{position:absolute;inset:0;z-index:30;display:grid;place-items:center;padding:22px;background:rgba(245,242,233,.72);backdrop-filter:blur(3px)}
.flowties-gate-card{width:min(580px,100%);border:2px solid var(--ink);background:white;box-shadow:10px 10px 0 var(--ink);padding:clamp(24px,5vw,46px);text-align:center}
.flowties-gate-card h2{font-size:clamp(2rem,6vw,3.7rem);letter-spacing:-.065em;line-height:.96;margin:9px 0 14px}
.flowties-gate-card>p:not(.eyebrow){line-height:1.55;max-width:480px;margin:0 auto 20px}
.flowties-gate-card .btn{margin:5px}
.flowties-gate-card small{display:block;max-width:440px;margin:15px auto 0;color:var(--muted);line-height:1.45}
.flowties-gate-icon{display:grid;place-items:center;margin:0 auto 14px;width:58px;height:58px;border:2px solid var(--ink);background:var(--acid,#efff3e);font-size:1.8rem;font-weight:800}
.legal-links{display:flex;gap:16px;flex-wrap:wrap}.legal-links a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1050px){.flowties-account-button{min-height:38px;padding:0 11px}.flowties-account{margin-left:auto}}
@media(max-width:760px){.flowties-auth-backdrop{padding:10px}.flowties-auth-modal{max-height:calc(100dvh - 20px);padding:24px 18px}.flowties-auth-brand{margin-bottom:20px}.flowties-gate-card{padding:25px 16px}.flowties-gate-card .btn{width:100%;margin:4px 0}.flowties-user-button{min-height:38px;padding:0 7px}.tool-page .flowties-account-button{font-size:.72rem;padding:0 9px}.tool-page #flowtiesAccount~#pageFav{display:none}}
