/* Account UI is opt-in: production pages without data-ttm-account-ui never show it. */
.account-menu-wrap{display:none!important}
body[data-ttm-account-ui="enabled"] .account-menu-wrap{display:block!important}
/* TickTockMaths v2 account controls — alpha.14 */
.account-menu-wrap{position:relative}.account-btn{min-width:112px;justify-content:center;gap:7px}.account-caret{font-size:.72em;opacity:.7}.account-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);width:230px;background:var(--surface,#fff);border:1px solid var(--border,#ddd);border-radius:8px;box-shadow:0 10px 24px rgba(0,0,0,.13);padding:7px;z-index:10020}.account-menu.open{display:block}.account-menu-profile{padding:8px 9px 10px;border-bottom:1px solid var(--border,#ddd);margin-bottom:5px}.account-menu-name{font:700 .86rem 'Noto Sans',sans-serif;color:var(--text,#222)}.account-menu-tier{font:500 .68rem 'Noto Sans',sans-serif;color:var(--muted,#777);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-item{width:100%;border:0;background:none;border-radius:6px;text-align:left;padding:9px 10px;cursor:pointer;font:600 .78rem 'Noto Sans',sans-serif;color:var(--text,#222)}.account-menu-item:hover{background:var(--accent-light,#eef4ff);color:var(--accent,#2457c5)}.account-menu-sep{height:1px;background:var(--border,#ddd);margin:5px 0}
.ttm-auth-overlay,.ttm-privacy-overlay{display:none;position:fixed;inset:0;background:rgba(20,20,18,.42);z-index:10060;align-items:center;justify-content:center;padding:24px}.ttm-auth-overlay.open,.ttm-privacy-overlay.open{display:flex}.ttm-auth-modal,.ttm-privacy-modal{width:min(440px,calc(100vw - 32px));background:var(--surface,#fff);border:1px solid var(--border,#e2e0d8);border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.18);overflow:hidden}.ttm-privacy-modal{width:min(720px,calc(100vw - 32px));max-height:min(82vh,760px);display:flex;flex-direction:column}.ttm-auth-head,.ttm-privacy-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--border,#e2e0d8)}.ttm-auth-head h2,.ttm-privacy-head h2{font:700 1.05rem 'Noto Sans',sans-serif;margin:0;color:var(--text,#1a1916)}.ttm-auth-close,.ttm-privacy-close{border:0;background:none;color:var(--muted,#8a8780);font-size:1.45rem;line-height:1;cursor:pointer;padding:2px 5px}.ttm-auth-body{padding:20px 18px}.ttm-auth-provider{display:block;width:100%;border:1px solid var(--border,#e2e0d8);background:var(--surface,#fff);border-radius:7px;padding:11px 12px;margin:0 0 9px;cursor:pointer;font:650 .82rem 'Noto Sans',sans-serif;color:var(--text,#1a1916);text-align:center}.ttm-auth-provider:hover{border-color:var(--accent,#2a5caa);background:var(--accent-light,#eef2fa)}.ttm-auth-status{min-height:18px;margin-top:7px;font:500 .7rem 'Noto Sans',sans-serif;color:var(--muted,#8a8780);text-align:center}.ttm-auth-status.error{color:#a33}.ttm-auth-privacy{margin:13px 5px 0;text-align:center;font:500 .68rem/1.45 'Noto Sans',sans-serif;color:var(--muted,#8a8780)}.ttm-auth-privacy button{border:0;background:none;padding:0;color:var(--accent,#2a5caa);font:inherit;text-decoration:underline;cursor:pointer}.ttm-privacy-body{padding:18px 22px 24px;overflow:auto;color:var(--text,#1a1916);font:500 .78rem/1.6 'Noto Sans',sans-serif}.ttm-privacy-body p{margin:0 0 13px}.ttm-privacy-body h3{font:700 .82rem 'Noto Sans',sans-serif;margin:19px 0 6px}.ttm-privacy-updated{color:var(--muted,#8a8780);font-size:.68rem;border-top:1px solid var(--border,#e2e0d8);padding-top:12px;margin-top:20px!important}

/* Compact application feedback */
.ttm-toast{position:fixed;right:18px;bottom:18px;z-index:10120;display:flex;align-items:center;gap:7px;max-width:min(320px,calc(100vw - 36px));background:var(--surface,#fff);color:var(--text,#1a1916);border:1px solid var(--border,#e2e0d8);border-radius:5px;padding:7px 10px;box-shadow:0 3px 10px rgba(26,25,22,.08);font:500 .76rem 'Noto Sans',sans-serif;line-height:1.25;opacity:0;transform:translateY(5px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}.ttm-toast::before{content:'✓';color:var(--accent,#2a5caa);font-weight:700}.ttm-toast.error::before{content:'!';color:var(--text,#1a1916)}.ttm-toast.show{opacity:1;transform:translateY(0)}
