:root{--tbac-green:#285f3b;--tbac-green-dark:#173d28;--tbac-gold:#d3a33d;--tbac-cream:#fff7df;--tbac-brown:#4a2d1d;--tbac-red:#9b352b}
.tbac-shell{box-sizing:border-box;padding:clamp(18px,4vw,56px);font-family:Georgia,'Times New Roman',serif;background:radial-gradient(circle at top,#f4e8c8,#d7c18e);color:var(--tbac-brown);border-radius:24px}
.tbac-shell *{box-sizing:border-box}.tbac-panel{max-width:1100px;margin:auto;background:rgba(255,247,223,.96);border:4px solid var(--tbac-brown);border-radius:24px;padding:clamp(20px,4vw,44px);box-shadow:0 14px 30px rgba(52,31,17,.2)}
.tbac-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--tbac-green);margin-bottom:4px}.tbac-panel h1,.tbac-panel h2,.tbac-panel h3{color:var(--tbac-brown)}
.tbac-art-placeholder,.tbac-avatar-placeholder{display:grid;place-items:center;border:3px dashed #9a7a4b;background:#efe3c2;color:#6c593e;text-align:center;font:700 12px/1.3 Arial,sans-serif;letter-spacing:.06em}.tbac-art-placeholder{min-height:180px;border-radius:18px;margin-bottom:22px}.tbac-avatar-placeholder{width:92px;height:92px;border-radius:50%;margin:auto}
.tbac-form{display:grid;gap:14px;max-width:650px}.tbac-form label{font-weight:700}.tbac-form input:not([type=checkbox]),.tbac-profile-card input,.tbac-profile-card select{width:100%;padding:12px;border:2px solid #a68b63;border-radius:10px;background:#fff}.tbac-check{display:flex;gap:10px;align-items:flex-start;font-family:Arial,sans-serif;font-weight:500!important}.tbac-check input{margin-top:3px}
.tbac-button{display:inline-block;border:0;border-radius:12px;background:linear-gradient(#397d4e,#225b38);color:#fff!important;text-decoration:none!important;font:800 15px/1 Arial,sans-serif;padding:14px 20px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.18),0 4px 0 #173d28;cursor:pointer}.tbac-button:hover{transform:translateY(-1px)}.tbac-button.tbac-secondary{background:linear-gradient(#dfb753,#b88726);box-shadow:inset 0 0 0 2px rgba(255,255,255,.2),0 4px 0 #765719;color:#2e2112!important}.tbac-small{padding:11px 14px}
.tbac-alert,.tbac-sandbox-banner{padding:12px 16px;border-radius:10px;font-family:Arial,sans-serif;font-weight:800}.tbac-alert{background:#fbe2dc;color:#75291f}.tbac-sandbox-banner{background:#2d224f;color:#fff;margin-bottom:18px;text-align:center;letter-spacing:.08em}
.tbac-family-status{display:flex;justify-content:space-between;gap:18px;padding:14px 18px;border:2px solid #b99c6a;border-radius:14px;background:#f4e8c7;font-family:Arial,sans-serif}.tbac-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.tbac-profile-card{padding:20px;text-align:center;border:3px solid #a47c42;border-radius:18px;background:#fffaf0;box-shadow:0 6px 14px rgba(73,47,24,.1)}.tbac-profile-card form{display:grid;gap:10px}.tbac-add-card{border-style:dashed}.tbac-membership-card{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:24px;border-radius:20px;background:linear-gradient(135deg,#1e4f33,#153924);color:#fff}.tbac-membership-card h2,.tbac-membership-card .tbac-eyebrow{color:#fff}.tbac-membership-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.tbac-profile-grid{grid-template-columns:1fr}.tbac-membership-card{grid-template-columns:1fr}.tbac-membership-actions{justify-content:flex-start}.tbac-shell{padding:12px}.tbac-panel{border-width:3px}}
.tbac-passport-topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px;font-family:Arial,sans-serif}.tbac-text-link{font-weight:800;color:var(--tbac-green)!important;text-decoration:none}.tbac-text-link:hover{text-decoration:underline}.tbac-active-profile{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6c593e}.tbac-passport-hero{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;margin:18px 0 24px}.tbac-avatar-large{width:128px;height:128px}.tbac-passport-hero h1{margin:0 0 8px}.tbac-passport-hero p{margin:6px 0}.tbac-muted{opacity:.78}.tbac-passport-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.tbac-passport-stats>div{padding:16px;border:2px solid #b99c6a;border-radius:14px;background:#f4e8c7;text-align:center;font-family:Arial,sans-serif}.tbac-passport-stats strong{display:block;font-size:clamp(20px,2vw,28px);color:var(--tbac-brown)}.tbac-passport-stats span{display:block;margin-top:4px;font-size:12px;font-weight:800}.tbac-passport-sections{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.tbac-passport-card{padding:20px;border:2px solid #b99c6a;border-radius:16px;background:#fffaf0}.tbac-passport-card h2{margin-top:4px}.tbac-score-list{list-style:none;padding:0;margin:12px 0 0}.tbac-score-list li{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #d9c79f;font-family:Arial,sans-serif}.tbac-score-list li:last-child{border-bottom:0}@media(max-width:800px){.tbac-passport-hero{grid-template-columns:1fr;text-align:center}.tbac-avatar-large{margin:auto}.tbac-passport-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tbac-passport-sections{grid-template-columns:1fr}.tbac-passport-topbar{align-items:flex-start;flex-direction:column}}
.tbac-profile-notice{min-height:auto;align-self:start}.tbac-passport-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.tbac-birthday-mini{display:grid;gap:8px;text-align:left;padding:10px;border:1px solid #d6c39d;border-radius:12px;background:#fffdf6}.tbac-birthday-mini small{font-family:Arial,sans-serif;color:#6c593e}.tbac-birthday-selects{display:grid;grid-template-columns:1fr 110px;gap:8px}.tbac-birthday-selects select,.tbac-birthday-form select{width:100%;padding:11px;border:2px solid #a68b63;border-radius:10px;background:#fff}.tbac-birthday-warning{padding:10px 12px;border-radius:10px;background:#fff0d6;border:1px solid #d7a450;font-family:Arial,sans-serif;font-size:13px;line-height:1.4}.tbac-birthday-form{display:grid;gap:12px}.tbac-birthday-celebration{margin-bottom:22px;padding:20px;border:3px solid #c99a38;border-radius:18px;background:#fff1c5;text-align:center}.tbac-birthday-celebration img{display:block;max-width:520px;width:100%;height:auto;margin:0 auto 14px;border-radius:14px}.tbac-birthday-celebration .tbac-art-placeholder{margin-bottom:14px}.tbac-leaderboard{max-width:760px;padding:22px;border:3px solid #a47c42;border-radius:18px;background:#fffaf0;color:var(--tbac-brown)}.tbac-leaderboard h2{margin-top:3px}.tbac-leaderboard ol{margin:0;padding:0;list-style:none;counter-reset:tbac-rank}.tbac-leaderboard li{counter-increment:tbac-rank;display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:12px 4px;border-bottom:1px solid #d9c79f;font-family:Arial,sans-serif}.tbac-leaderboard li:before{content:counter(tbac-rank);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f4e8c7;font-weight:800}.tbac-leaderboard li:last-child{border-bottom:0}.tbac-leaderboard .tbac-empty{display:block}.tbac-leaderboard .tbac-empty:before{display:none}
@media(max-width:900px){.tbac-passport-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.tbac-passport-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tbac-passport-stats>div{padding:14px 8px}.tbac-passport-stats span{font-size:11px;line-height:1.2}}
@media(max-width:520px){.tbac-birthday-selects{grid-template-columns:1fr}}
.tbac-family-tools{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:12px}.tbac-family-tools h1{margin-top:0}.tbac-support-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:22px}.tbac-support-form select,.tbac-support-form textarea,.tbac-support-form input[type=text],.tbac-form textarea{width:100%;padding:12px;border:2px solid #a68b63;border-radius:10px;background:#fff;font:inherit}.tbac-support-success{padding:12px 16px;border-radius:10px;background:#e6f3e7;border:1px solid #86b889;color:#23482c;font:700 14px/1.4 Arial,sans-serif;margin-bottom:16px}.tbac-ticket-list{display:grid;gap:10px}.tbac-ticket-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px;border:2px solid #d5c19a;border-radius:12px;background:#fff;text-decoration:none!important;color:var(--tbac-brown)!important;font-family:Arial,sans-serif}.tbac-ticket-row:hover{border-color:#9f7c42}.tbac-ticket-row span:first-child{display:grid;gap:4px}.tbac-ticket-row small{font-size:12px;line-height:1.35}.tbac-ticket-status{display:inline-block;padding:6px 9px;border-radius:999px;font:800 11px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:#eee;color:#333}.tbac-status-new,.tbac-status-waiting_admin{background:#ffe8c2;color:#6a4308}.tbac-status-waiting_parent{background:#dcecff;color:#244f78}.tbac-status-resolved{background:#dff1e1;color:#2a5d32}.tbac-ticket-thread{display:grid;gap:12px;margin:22px 0}.tbac-ticket-message{max-width:850px;border:2px solid #d5c19a;border-radius:16px;padding:14px 16px;background:#fff}.tbac-ticket-message>div{display:flex;justify-content:space-between;gap:12px;font-family:Arial,sans-serif}.tbac-ticket-message small{opacity:.7}.tbac-ticket-message p{margin-bottom:0;line-height:1.55}.tbac-message-admin{background:#edf7ed;border-color:#9ec5a4;margin-left:auto}.tbac-message-parent{margin-right:auto}@media(max-width:800px){.tbac-family-tools{flex-direction:column}.tbac-support-grid{grid-template-columns:1fr}.tbac-ticket-row{align-items:flex-start;flex-direction:column}.tbac-ticket-message{max-width:100%}}

/* v0.2.5 game score row readability */
.tbac-game-score-list .tbac-score-main{display:grid;gap:4px;min-width:0;flex:1}
.tbac-game-score-list .tbac-score-title{display:block;font-weight:700;line-height:1.3}
.tbac-game-score-list .tbac-score-date{display:block;margin:0;color:#786b58;font-size:12px;line-height:1.25}
.tbac-game-score-list li>strong{align-self:center;white-space:nowrap}
@media(max-width:520px){.tbac-game-score-list li{align-items:flex-start}.tbac-game-score-list li>strong{padding-top:1px}}

.tbac-parent-birthday{margin:12px 0;text-align:left}.tbac-parent-birthday summary{cursor:pointer;font-weight:700;color:#1f6a3f}.tbac-parent-birthday[open]{padding-top:4px}.tbac-parent-birthday .tbac-birthday-form{margin-top:10px}

.tbac-birthday-preview-label{margin:0 0 14px;padding:8px 12px;border-radius:10px;background:#34255f;color:#fff;font-weight:800;font-size:12px;letter-spacing:.06em;text-align:center}.tbac-birthday-celebration img{display:block;max-width:100%;height:auto;margin:0 auto 16px}

/* v0.3.0 achievements and digital rewards */
.tbac-point-ledger .tbac-score-main{display:grid;gap:4px;min-width:0;flex:1}
.tbac-achievement-grid,.tbac-reward-grid{display:grid;gap:12px;margin-top:12px}
.tbac-achievement-item,.tbac-reward-item{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;padding:12px;border:1px solid #d9c79f;border-radius:14px;background:#fffdf6}
.tbac-achievement-item img,.tbac-reward-item img{width:72px;height:72px;object-fit:contain;border-radius:12px;background:#fff}
.tbac-mini-placeholder{display:grid;place-items:center;width:72px;height:72px;border:2px dashed #9a7a4b;border-radius:12px;background:#efe3c2;color:#6c593e;font:800 10px/1 Arial,sans-serif;letter-spacing:.05em}
.tbac-achievement-item strong,.tbac-reward-item strong{display:block;font-size:17px}
.tbac-achievement-item p,.tbac-reward-item p{margin:5px 0 0;line-height:1.4}
.tbac-achievement-item small,.tbac-reward-item small{display:block;margin-top:4px;color:#6c593e;font-family:Arial,sans-serif;font-weight:700}
@media(max-width:520px){.tbac-achievement-item,.tbac-reward-item{grid-template-columns:56px 1fr}.tbac-achievement-item img,.tbac-reward-item img,.tbac-mini-placeholder{width:56px;height:56px}}

/* v0.3.1 grown-up-only child profile management */
.tbac-grownup-profile-settings{margin:24px 0;padding:22px;border:2px solid #b99c6a;border-radius:18px;background:#fffaf0}
.tbac-grownup-profile-settings h2{margin-top:4px}.tbac-grownup-profile-list{display:grid;gap:12px;margin-top:16px}.tbac-grownup-profile-row{padding:14px 16px;border:1px solid #d9c79f;border-radius:14px;background:#fffdf6}.tbac-grownup-profile-row p{margin:8px 0}.tbac-sandbox-tools{margin:-8px 0 12px;text-align:right;font-family:Arial,sans-serif;font-size:13px}

/* Child-safe Adventure Profile sign-in */
.tbac-family-tool-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.tbac-child-credential-box{margin:14px 0;padding:14px;border:1px solid rgba(91,61,31,.22);border-radius:12px;background:rgba(255,250,240,.75)}
.tbac-credential-form{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) auto;gap:10px;align-items:end}
.tbac-credential-form label{display:grid;gap:5px}
.tbac-credential-form input,.tbac-child-login-form input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #bba985;border-radius:9px;background:#fff}
.tbac-credential-ready{color:#286234;font-weight:700}.tbac-credential-warning{color:#9b5517;font-weight:700}
.tbac-adventurer-login{max-width:720px;margin-inline:auto}
.tbac-child-login-form{display:grid;gap:14px;margin:18px 0}.tbac-child-login-form label{display:grid;gap:6px}
.tbac-child-auth-status{margin:14px 0;padding:12px 14px;border-radius:10px;background:#fff7df;border:1px solid #dfc98c;font-weight:700}
.tbac-child-auth-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:16px 0}
.tbac-text-button{appearance:none;border:0;background:transparent;text-decoration:underline;cursor:pointer;color:inherit;padding:8px}
.tbac-adventurer-switcher{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:8px 12px;border:1px solid rgba(91,61,31,.2);border-radius:999px;background:rgba(255,250,240,.92)}
@media(max-width:720px){.tbac-credential-form{grid-template-columns:1fr}.tbac-family-tool-actions{justify-content:flex-start}.tbac-child-auth-actions{align-items:stretch}.tbac-child-auth-actions .tbac-button{width:100%;text-align:center}}

/* v0.3.11 child-auth no-flash boot state */
.tbac-auth-loading{text-align:center;padding:10px 0}
.tbac-auth-loading h1{margin-bottom:10px}
.tbac-auth-pending .tbac-auth-resolved{display:none!important}

.tbac-session-actions{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin:-8px 0 12px;font-family:Arial,sans-serif;font-size:13px;flex-wrap:wrap}
.tbac-session-actions .tbac-text-button{font-weight:700}
.tbac-session-actions .tbac-end-session{font-weight:600}


/* v0.3.22 combined Points & Coins Ledger */
.tbac-four-leaf-clover{display:inline-block;width:1.05em;height:1.05em;vertical-align:-.16em;margin-right:.24em;overflow:visible;color:#2f7a45;flex:0 0 auto}
.tbac-ledger-filters{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 6px;font-family:Arial,sans-serif}
.tbac-ledger-filter{appearance:none;border:1px solid #a98b5b;border-radius:999px;background:#fffaf0;color:var(--tbac-brown);padding:7px 10px;font:800 11px/1 Arial,sans-serif;cursor:pointer}
.tbac-ledger-filter:hover{border-color:var(--tbac-green);color:var(--tbac-green)}
.tbac-ledger-filter.is-active{background:var(--tbac-green);border-color:var(--tbac-green);color:#fff}
.tbac-points-coins-ledger .tbac-ledger-row-hidden{display:none!important}
.tbac-points-coins-ledger .tbac-score-main{display:grid;gap:4px;min-width:0;flex:1}
.tbac-points-coins-ledger .tbac-score-title{display:block;font-weight:700;line-height:1.3}
.tbac-points-coins-ledger .tbac-score-date{display:block;margin:0;color:#786b58;font-size:12px;line-height:1.25}
.tbac-ledger-amount{display:flex;align-items:center;justify-content:flex-end;gap:2px;text-align:right;white-space:nowrap}
.tbac-ledger-amount small{font-size:10px;line-height:1.15;font-weight:800}
.tbac-ledger-coins{color:#285f3b}
.tbac-ledger-points{color:var(--tbac-brown)}
.tbac-ledger-empty-filter{margin:14px 0 0;font-family:Arial,sans-serif;color:#786b58}
@media(max-width:520px){.tbac-ledger-amount{display:grid;justify-items:end}.tbac-ledger-filters{gap:5px}.tbac-ledger-filter{padding:7px 8px;font-size:10px}}


/* v0.3.25 Clover Coin shop + Adventure Satchel foundation */
.tbac-clover-shop-card{grid-column:1/-1}
.tbac-shop-balance{display:inline-flex;align-items:center;gap:4px;margin:4px 0 14px;padding:8px 11px;border-radius:999px;background:#edf6eb;border:1px solid #a9c9a7;font:700 13px/1.2 Arial,sans-serif;color:#234b2e}
.tbac-clover-shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:8px}
.tbac-clover-shop-item{display:grid;grid-template-columns:68px 1fr;gap:14px;align-items:start;padding:16px;border:1px solid #d9c79f;border-radius:15px;background:#fffdf6}
.tbac-shop-item-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:linear-gradient(#f6e8a8,#d6ad43);border:2px solid #9a7427;color:#245f37;box-shadow:inset 0 0 0 3px rgba(255,255,255,.35)}
.tbac-shop-item-icon .tbac-four-leaf-clover{width:36px;height:36px;margin:0}
.tbac-shop-item-copy>strong{display:block;font-size:18px;line-height:1.25}.tbac-shop-item-copy>small{display:block;margin-top:3px;color:#6c593e;font:700 11px/1.3 Arial,sans-serif}.tbac-shop-item-copy p{margin:8px 0;line-height:1.45}
.tbac-shop-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:9px 0 12px;font:800 12px/1.2 Arial,sans-serif;color:#285f3b}.tbac-shop-meta span{display:inline-flex;align-items:center}.tbac-owned-pill{padding:5px 8px;border-radius:999px;background:#dff1e1;color:#285f3b}.tbac-owned-button{opacity:.65;cursor:default}.tbac-shop-status{min-height:1.35em;margin-top:9px;color:#285f3b;font:700 12px/1.35 Arial,sans-serif}
.tbac-adventure-satchel{margin-top:18px;padding-top:16px;border-top:1px solid #d9c79f}.tbac-adventure-satchel h3{margin:0 0 9px}.tbac-inventory-list{display:flex;gap:8px;flex-wrap:wrap}.tbac-inventory-list span{padding:7px 9px;border-radius:10px;background:#f4e8c7;border:1px solid #d0b982;font:700 12px/1.25 Arial,sans-serif}
@media(max-width:720px){.tbac-clover-shop-grid{grid-template-columns:1fr}.tbac-clover-shop-item{grid-template-columns:56px 1fr}.tbac-shop-item-icon{width:56px;height:56px}.tbac-shop-item-icon .tbac-four-leaf-clover{width:30px;height:30px}}

/* v0.3.26 Fifi's Fabulous Emporium + Satchel engagement polish */
.tbac-emporium-panel{max-width:1120px;margin:0 auto}
.tbac-emporium-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.tbac-emporium-intro{max-width:850px;font-size:16px;line-height:1.55}
.tbac-emporium-balance{display:inline-flex;align-items:center;gap:12px;margin:8px 0 14px;padding:11px 14px;border:1px solid #a9c9a7;border-radius:14px;background:#edf6eb;font:700 13px/1.2 Arial,sans-serif;color:#234b2e}
.tbac-emporium-balance strong{display:inline-flex;align-items:center;gap:4px;font-size:20px}.tbac-emporium-balance .tbac-four-leaf-clover{width:22px;height:22px}
.tbac-coin-encouragement{margin:10px 0 16px;padding:14px 16px;border:1px solid #d9c79f;border-radius:14px;background:#fff9e8}
.tbac-coin-encouragement>strong{font-size:17px}.tbac-coin-encouragement p{margin:6px 0 0;line-height:1.45}
.tbac-satchel-encouragement{margin-top:16px}
.tbac-store-switcher{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0;padding:10px 12px;border-top:1px solid #d9c79f;border-bottom:1px solid #d9c79f;font:700 12px/1.3 Arial,sans-serif}
.tbac-store-current{color:#285f3b}.tbac-store-coming{color:#786b58}
.tbac-emporium-grid{margin-top:16px}.tbac-emporium-item{grid-template-columns:120px 1fr;position:relative;overflow:hidden}
.tbac-emporium-artwrap{position:relative;min-height:116px;display:grid;place-items:center}
.tbac-emporium-art{width:116px;height:116px;object-fit:contain;border-radius:14px;background:#fff;border:1px solid #e1d6bb}
.tbac-emporium-placeholder{width:98px;height:98px}.tbac-emporium-placeholder .tbac-four-leaf-clover{width:48px;height:48px}
.tbac-limited-ribbon{position:absolute;left:4px;top:4px;padding:4px 7px;border-radius:999px;background:#5d2747;color:#fff;font:800 9px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}
.tbac-item-badges{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:6px}.tbac-item-badges span{padding:4px 7px;border-radius:999px;background:#eee4cc;color:#59482f;font:800 9px/1.15 Arial,sans-serif;text-transform:uppercase;letter-spacing:.03em}
.tbac-need-coins{opacity:.62;cursor:not-allowed}.tbac-earn-more-hint{margin:7px 0 0!important;color:#6a5230;font:700 12px/1.4 Arial,sans-serif}
.tbac-emporium-footer{margin-top:20px;padding-top:16px;border-top:1px solid #d9c79f}
.tbac-passport-inventory{margin:8px 0 0}.tbac-passport-inventory span{background:#f4e8c7}
@media(max-width:720px){.tbac-emporium-topbar{align-items:flex-start;flex-direction:column}.tbac-emporium-item{grid-template-columns:76px 1fr}.tbac-emporium-art{width:72px;height:72px}.tbac-emporium-placeholder{width:68px;height:68px}.tbac-emporium-placeholder .tbac-four-leaf-clover{width:34px;height:34px}}


/* v0.3.27: direct Emporium <-> Trading Post navigation */
.tbac-store-switcher .tbac-trading-post-link{margin-left:auto;text-decoration:none;white-space:nowrap}
.tbac-store-switcher .tbac-store-coming{font-weight:700;color:#6b5a42;white-space:nowrap}
.tbac-trading-post-panel{max-width:960px;margin:0 auto}
.tbac-trading-post-intro{max-width:800px;font-size:17px;line-height:1.55}
.tbac-trading-post-coming-card{margin:22px 0;padding:20px 22px;border:1px solid #d9c79f;border-radius:16px;background:#fffdf6;box-shadow:0 8px 18px rgba(61,37,24,.06)}
.tbac-trading-post-coming-card>strong{display:block;font:800 21px/1.2 Georgia,serif;color:#4b2d1f;margin-bottom:8px}
.tbac-trading-post-coming-card p{margin:8px 0;line-height:1.5}
.tbac-store-crosslinks{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:18px}
@media(max-width:720px){.tbac-store-switcher{align-items:flex-start}.tbac-store-switcher .tbac-trading-post-link{margin-left:0}.tbac-store-switcher .tbac-store-coming{width:100%;white-space:normal}.tbac-store-crosslinks .tbac-button{width:100%;text-align:center}}


/* v0.3.28: direct Satchel access to both Clover Coin destinations */
.tbac-satchel-shop-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:2px}
.tbac-satchel-shop-links .tbac-button{text-decoration:none}
.tbac-secondary-button{background:#7a5a2e;border-color:#5c421f;color:#fff}
.tbac-secondary-button:hover,.tbac-secondary-button:focus{background:#60451f;color:#fff}
@media(max-width:620px){.tbac-satchel-shop-links .tbac-button{width:100%;text-align:center}}


/* v0.3.30: make both Clover Coin destinations visible in grown-up Passport previews */
.tbac-satchel-destinations{margin-top:14px;padding-top:12px;border-top:1px solid #dfcfaa}
.tbac-satchel-destinations-title{margin:0 0 8px;font:800 13px/1.2 Arial,sans-serif;color:#285f3b;text-transform:uppercase;letter-spacing:.05em}
.tbac-satchel-destinations-preview{padding:13px 14px;border:1px solid #dfcfaa;border-radius:12px;background:#fffaf0}
.tbac-satchel-destinations-preview .tbac-muted{margin:0 0 9px}
.tbac-preview-destination{display:inline-flex;align-items:center;justify-content:center;opacity:.58;cursor:not-allowed;filter:saturate(.7);pointer-events:none;user-select:none}
.tbac-preview-destination-note{margin:9px 0 0;color:#786b58;font:700 11px/1.4 Arial,sans-serif}

/* v0.3.35: activity-aware Passport return control. */
.tbac-passport-topbar .tbac-return-activity{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border:2px solid #2f6641;border-radius:10px;background:linear-gradient(#397d4e,#225b38);box-shadow:0 3px 0 #173d28;color:#fff!important;text-decoration:none!important;font:800 13px/1.15 Arial,sans-serif}.tbac-passport-topbar .tbac-return-activity:hover,.tbac-passport-topbar .tbac-return-activity:focus-visible{background:linear-gradient(#478d5c,#1e5132);color:#fff!important;text-decoration:none!important;outline:3px solid #d4ad52;outline-offset:2px}@media(max-width:800px){.tbac-passport-topbar .tbac-return-activity{width:100%;box-sizing:border-box;text-align:center}}

/* v0.3.36 remembered Adventurer device controls */
.tbac-remember-device{display:flex!important;align-items:flex-start;gap:10px;padding:12px 14px;border:2px solid #c6b184;border-radius:12px;background:#fffaf0;font-family:Arial,sans-serif;font-weight:500!important;line-height:1.35;cursor:pointer}
.tbac-remember-device input{flex:0 0 auto;margin:3px 0 0;width:18px;height:18px;accent-color:var(--tbac-green)}
.tbac-remember-device span{display:grid;gap:3px}.tbac-remember-device strong{color:var(--tbac-brown);font-size:14px}.tbac-remember-device small{color:#6c593e;font-size:12px;line-height:1.4}
.tbac-remembered-device-management{display:grid;gap:8px;margin-top:12px;padding:12px 14px;border:1px solid #cdb98f;border-radius:12px;background:#f9f1db;font:500 13px/1.4 Arial,sans-serif;text-align:left}
.tbac-remembered-device-management p{margin:0}.tbac-remembered-device-management form{margin:0}.tbac-remembered-device-management small{color:#6c593e}
@media(max-width:520px){.tbac-remember-device{padding:11px 12px}.tbac-remembered-device-management .tbac-button{width:100%;text-align:center}}

/* v0.3.39 branded grown-up sign-in */
.tbac-grownup-shell{min-height:calc(100vh - 58px);display:grid;place-items:center;border-radius:0}
.tbac-grownup-login-card{max-width:620px;text-align:center}
.tbac-grownup-emblem{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 14px;border:3px solid var(--tbac-brown);border-radius:50%;background:linear-gradient(#f6d878,#c99931);color:var(--tbac-green-dark);font:900 34px/1 Georgia,serif;box-shadow:0 5px 0 #8a6724}
.tbac-grownup-login-card h1{margin:6px 0 12px;font-size:clamp(32px,5vw,50px);line-height:1.05}
.tbac-grownup-intro{max-width:500px;margin:0 auto 20px;line-height:1.55}
.tbac-grownup-login-form{margin:20px auto;text-align:left;padding:22px;border:2px solid #c7ad7d;border-radius:18px;background:#fffaf0;box-shadow:0 7px 18px rgba(73,47,24,.08)}
.tbac-grownup-login-form label:not(.tbac-check){display:grid;gap:7px;font-family:Arial,sans-serif;font-size:14px}
.tbac-grownup-login-form input[type=email],.tbac-grownup-login-form input[type=password]{font:16px/1.2 Arial,sans-serif}
.tbac-grownup-remember{margin-top:2px}
.tbac-grownup-submit{width:100%;text-align:center;margin-top:2px}
.tbac-grownup-help{max-width:500px;margin:18px auto;color:#6c593e;font:13px/1.55 Arial,sans-serif}
@media(max-width:640px){.tbac-grownup-shell{min-height:calc(100vh - 50px)}.tbac-grownup-login-form{padding:16px}.tbac-grownup-emblem{width:58px;height:58px;font-size:29px}}

/* v0.3.45: Gallery Favorite Characters in Adventure Passport */
.tbac-favorite-characters-card{grid-column:1/-1;overflow:hidden}
.tbac-favorite-characters-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.tbac-favorite-characters-heading h2{margin:4px 0 6px}.tbac-favorite-characters-heading p{margin:0;line-height:1.45}.tbac-gallery-all-link{flex:0 0 auto;margin-top:4px;white-space:nowrap}
.tbac-favorite-character-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.tbac-favorite-character{position:relative;min-width:0;border:2px solid #d4bd8d;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 5px 12px rgba(73,47,24,.08);transition:opacity .16s ease,transform .16s ease}.tbac-favorite-character.is-removing{opacity:0;transform:scale(.96)}
.tbac-favorite-character-portrait{position:relative;display:block;aspect-ratio:4/5;background:#efe3c2;overflow:hidden;text-decoration:none!important}
.tbac-favorite-character-portrait img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.tbac-favorite-character-portrait:hover img,.tbac-favorite-character-portrait:focus-visible img{transform:scale(1.025)}
.tbac-favorite-character-portrait:focus-visible{outline:4px solid var(--tbac-gold);outline-offset:-4px}
.tbac-favorite-character-placeholder{display:grid;place-items:center;width:100%;height:100%;font:900 52px/1 Georgia,serif;color:#9a7427}
.tbac-favorite-character-star{position:absolute;z-index:3;right:8px;top:8px;display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:50%;background:#285f3b;color:#fff5c7;border:2px solid #fff5c7;box-shadow:0 2px 7px rgba(0,0,0,.25);font:900 21px/1 Arial,sans-serif}.tbac-favorite-character-remove{appearance:none;-webkit-appearance:none;cursor:pointer}.tbac-favorite-character-remove:hover,.tbac-favorite-character-remove:focus-visible{background:#7a2e2e;transform:scale(1.08);outline:3px solid #fff5c7;outline-offset:2px}.tbac-favorite-character-remove:disabled{cursor:wait;opacity:.7}.tbac-favorite-characters-status{min-height:20px;margin:-7px 0 10px;color:#315b3b;font:700 12px/1.4 Arial,sans-serif}
.tbac-favorite-character-copy{display:grid;gap:4px;padding:11px 12px 13px}.tbac-favorite-character-copy strong{font-size:16px;line-height:1.2}.tbac-favorite-character-copy small{color:#6c593e;font:700 11px/1.3 Arial,sans-serif}.tbac-favorite-character-copy .tbac-text-link{margin-top:4px;font-size:12px}
.tbac-favorite-characters-empty{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:center;padding:16px;border:2px dashed #c7ad7d;border-radius:14px;background:#fffdf6}.tbac-favorite-characters-empty>span{font:900 42px/1 Georgia,serif;color:#9a7427}.tbac-favorite-characters-empty strong{display:block;font-size:17px}.tbac-favorite-characters-empty p{margin:5px 0 11px;line-height:1.45}
@media(max-width:720px){.tbac-favorite-characters-heading{flex-direction:column}.tbac-gallery-all-link{white-space:normal}.tbac-favorite-character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tbac-favorite-character-copy{padding:9px 10px 11px}.tbac-favorite-character-copy strong{font-size:14px}.tbac-favorite-characters-empty{grid-template-columns:1fr;text-align:center}.tbac-favorite-characters-empty>span{margin:auto}.tbac-favorite-characters-empty .tbac-button{width:100%;text-align:center}}
@media(max-width:390px){.tbac-favorite-character-grid{grid-template-columns:1fr 1fr}.tbac-favorite-character-star{width:30px;height:30px;font-size:18px}.tbac-favorite-character-copy .tbac-text-link{font-size:11px}}


/* v0.3.50 separate Adventurer + Sidekick Passport windows */
.tbac-passport-identity{display:grid;grid-template-columns:minmax(180px,230px) minmax(180px,230px) minmax(0,1fr);gap:18px;align-items:stretch;margin:18px 0 24px}.tbac-passport-visual-card{margin:0;padding:14px;border:2px solid #b99c6a;border-radius:16px;background:#fffaf0;display:flex;flex-direction:column;min-width:0}.tbac-passport-visual-label{margin:0 0 9px;text-align:center;font:800 12px/1.2 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--tbac-brown)}.tbac-passport-visual-window{height:220px;border:1px solid #d9c79f;border-radius:12px;background:#fff;overflow:hidden;display:grid;place-items:center;position:relative;padding:8px;box-sizing:border-box}.tbac-passport-visual-window img{display:block;width:100%;height:100%;object-fit:contain}.tbac-passport-visual-window .tbac-avatar-placeholder{width:100%;height:100%;max-width:none;border-radius:10px;margin:0}.tbac-passport-visual-placeholder{font-size:13px}.tbac-passport-sidekick-figure{width:100%;height:100%;margin:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:5px;place-items:center}.tbac-passport-sidekick-figure img{min-height:0}.tbac-passport-sidekick-figure figcaption{font:800 12px/1.2 Arial,sans-serif;color:var(--tbac-brown);text-align:center}.tbac-sidekick-empty{height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;text-align:center;padding:12px;box-sizing:border-box;color:#6c593e;font-family:Arial,sans-serif}.tbac-sidekick-empty strong{font-size:15px}.tbac-sidekick-empty span{font-size:12px;line-height:1.4;max-width:180px}.tbac-passport-intro{align-self:center;min-width:0}.tbac-passport-intro h1{margin:0 0 8px}.tbac-passport-intro p{margin:6px 0}.tbac-passport-pairing-note{font-size:12px;line-height:1.45}.tbac-passport-avatar-image,.tbac-passport-sidekick-image{max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:900px){.tbac-passport-identity{grid-template-columns:repeat(2,minmax(0,1fr))}.tbac-passport-intro{grid-column:1/-1;text-align:center}.tbac-passport-visual-window{height:250px}}
@media(max-width:560px){.tbac-passport-identity{grid-template-columns:1fr}.tbac-passport-intro{grid-column:auto}.tbac-passport-visual-window{height:280px}.tbac-passport-visual-card{padding:12px}}

/* v0.3.51 responsive Passport identity + independent companion framing */
.tbac-passport-identity{display:grid;grid-template-columns:minmax(190px,240px) minmax(190px,240px) minmax(0,1fr);gap:18px;align-items:stretch;margin:18px 0 24px}
.tbac-passport-visual-card{margin:0;padding:14px;border:2px solid #b99c6a;border-radius:16px;background:#fffaf0;display:flex;flex-direction:column;min-width:0;box-sizing:border-box}
.tbac-passport-visual-label{margin:0 0 9px;text-align:center;font:800 12px/1.2 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--tbac-brown)}
.tbac-passport-visual-window{aspect-ratio:4/5;width:100%;height:auto!important;min-height:0;border:1px solid #d9c79f;border-radius:12px;background:#fff;overflow:hidden;position:relative;padding:0;box-sizing:border-box;display:block}
.tbac-passport-positioned-art{position:absolute!important;left:calc(50% + var(--tbac-passport-x,0%));top:calc(50% + var(--tbac-passport-y,0%));width:auto!important;height:auto!important;max-width:100%;max-height:100%;object-fit:contain;transform:translate(-50%,-50%) rotate(var(--tbac-passport-rotation,0deg)) scale(var(--tbac-passport-scale,1)) scaleX(var(--tbac-passport-flip,1));transform-origin:center center;display:block}
.tbac-passport-avatar-window .tbac-avatar-placeholder{position:absolute;inset:0;width:100%;height:100%;max-width:none;border-radius:10px;margin:0}
.tbac-passport-visual-action{display:flex;align-items:center;justify-content:center;min-height:42px;margin-top:10px;padding:8px 10px;border:2px solid #2f6641;border-radius:9px;background:#fff;color:#2f6641!important;text-decoration:none!important;text-align:center;font:800 12px/1.2 Arial,sans-serif;box-sizing:border-box}
.tbac-passport-visual-actions{display:grid;gap:7px;margin-top:10px}.tbac-passport-visual-actions .tbac-passport-visual-action{margin-top:0}.tbac-passport-visual-action-secondary{border-color:#9f8155!important;color:#6b4a27!important;background:#fffaf0!important}.tbac-passport-visual-action:hover,.tbac-passport-visual-action:focus-visible{background:#edf8f0;color:#1e5132!important;outline:3px solid #d4ad52;outline-offset:2px}
.tbac-passport-companion-name{min-height:18px;margin:8px 0 0;text-align:center;font:800 13px/1.25 Arial,sans-serif;color:var(--tbac-brown)}
.tbac-sidekick-empty{position:absolute;inset:0;height:auto;width:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;text-align:center;padding:12px;box-sizing:border-box;color:#6c593e;font-family:Arial,sans-serif}
.tbac-passport-intro{align-self:center;min-width:0}.tbac-passport-intro h1{margin:0 0 8px}.tbac-passport-intro p{margin:6px 0}.tbac-passport-pairing-note{font-size:12px;line-height:1.45}
@media(max-width:900px){.tbac-passport-identity{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;margin-left:auto;margin-right:auto}.tbac-passport-intro{grid-column:1/-1;text-align:center}.tbac-passport-visual-card{width:100%;max-width:330px;justify-self:center}.tbac-passport-visual-action{min-height:44px}.tbac-passport-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.tbac-passport-identity{grid-template-columns:1fr;max-width:390px}.tbac-passport-intro{grid-column:auto}.tbac-passport-visual-card{max-width:350px}.tbac-passport-visual-action{font-size:13px}.tbac-passport-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tbac-passport-topbar{align-items:stretch}.tbac-passport-topbar>*{width:100%;box-sizing:border-box}.tbac-passport-sections{grid-template-columns:1fr}}
@media(max-width:380px){.tbac-passport-visual-card{padding:10px}.tbac-passport-stats{grid-template-columns:1fr}.tbac-passport-identity{gap:14px}}


/* v0.3.57 atomic Adventurer / companion renderer reveal */
.tbac-art-bundle{position:absolute;inset:0;overflow:hidden}.tbac-passport-companion-scene{position:absolute;inset:0}.tbac-art-bundle .tbac-passport-avatar-background,.tbac-art-bundle .tbac-passport-avatar-rig,.tbac-art-bundle>.tbac-passport-positioned-art{opacity:1;transition:opacity .14s ease-out}.tbac-art-bundle-pending .tbac-passport-avatar-background,.tbac-art-bundle-pending .tbac-passport-avatar-rig,.tbac-art-bundle-pending>.tbac-passport-positioned-art{opacity:0!important}.tbac-art-bundle-pending:after{position:absolute;z-index:999;left:50%;top:50%;max-width:82%;transform:translate(-50%,-50%);padding:7px 10px;border-radius:999px;background:rgba(255,253,246,.92);box-shadow:0 2px 8px rgba(74,45,29,.10);color:#6c593e;text-align:center;font:800 10px/1.2 Arial,sans-serif;opacity:0;pointer-events:none;animation:tbac-art-loader-reveal .01s linear .14s forwards}.tbac-passport-avatar-scene.tbac-art-bundle-pending:after{content:'Getting your Adventurer ready…'}.tbac-passport-companion-scene.tbac-art-bundle-pending:after{content:'Getting your companion ready…'}@keyframes tbac-art-loader-reveal{to{opacity:1}}@media(prefers-reduced-motion:reduce){.tbac-art-bundle .tbac-passport-avatar-background,.tbac-art-bundle .tbac-passport-avatar-rig,.tbac-art-bundle>.tbac-passport-positioned-art{transition:none}.tbac-art-bundle-pending:after{animation-delay:0s}}

/* v0.3.53 profile defaults + Adventure Levels */
.tbac-starting-avatar-choice{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0;padding:12px;border:1px solid #d6c39d;border-radius:12px;background:#fffdf6;font-family:Arial,sans-serif}.tbac-starting-avatar-choice legend{padding:0 6px;font-weight:800;color:var(--tbac-brown)}.tbac-starting-avatar-choice label{display:flex;gap:7px;align-items:center;font-weight:700}.tbac-starting-avatar-choice small{flex-basis:100%;color:#6c593e;line-height:1.35}
.tbac-passport-visual-subtitle{min-height:18px;margin:-3px 0 8px;text-align:center;font:700 13px/1.25 Arial,sans-serif;color:var(--tbac-brown)}
.tbac-passport-avatar-rig{position:absolute;inset:0;transform:translateX(var(--tbac-passport-rig-shift-x,0px));transform-origin:center center}
.tbac-adventure-level{margin:6px 0 18px;padding:14px 16px;border:2px solid #b99c6a;border-radius:14px;background:#fff8e7;font-family:Arial,sans-serif}.tbac-adventure-level-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.tbac-adventure-level-head strong{font-size:17px;color:var(--tbac-brown)}.tbac-adventure-level-head span,.tbac-adventure-level small{font-size:12px;font-weight:700;color:#6c593e}.tbac-adventure-level-track{height:13px;margin:9px 0 7px;border:1px solid #9e8357;border-radius:999px;background:#efe2c3;overflow:hidden}.tbac-adventure-level-track>span{display:block;height:100%;border-radius:inherit;background:#2f6641}.tbac-adventure-level small{display:block;text-align:right}
@media(max-width:620px){.tbac-starting-avatar-choice{align-items:flex-start;flex-direction:column}.tbac-adventure-level-head{align-items:flex-start;flex-direction:column;gap:3px}.tbac-adventure-level small{text-align:left}}

/* v0.3.54 Asset Studio collectibles in Fifi's Emporium */
.tbac-emporium-species{display:block;font-weight:800;color:#2f6844;margin-top:2px}
.tbac-shop-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}
.tbac-emporium-item .tbac-owned-pill{white-space:nowrap}
@media(max-width:720px){.tbac-shop-actions .tbac-button{width:100%;text-align:center}.tbac-emporium-species{font-size:12px}}


/* v0.3.55 scalable Fifi's Fabulous Emporium storefront */
.tbac-emporium-heading-row{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.tbac-emporium-heading-row .tbac-emporium-balance{flex:0 0 auto;margin-top:22px}.tbac-fifi-focus{margin:20px 0 18px;padding:18px;border:1px solid #d8c28f;border-radius:18px;background:linear-gradient(135deg,#fff9e8,#f5e4b6)}.tbac-store-section-heading,.tbac-store-results-head{display:flex;align-items:end;justify-content:space-between;gap:16px}.tbac-store-section-heading h2,.tbac-store-results-head h2{margin:2px 0 0}.tbac-store-section-heading a{font-weight:800;color:#2d6540;text-decoration:none}.tbac-fifi-focus-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;margin-top:12px}.tbac-fifi-focus-side{display:grid;grid-template-columns:1fr;gap:10px}.tbac-fifi-focus .tbac-store-card-compact{grid-template-columns:140px 1fr;min-height:150px;margin:0}.tbac-fifi-focus-hero .tbac-store-card-compact{grid-template-columns:minmax(200px,42%) 1fr;height:100%}.tbac-fifi-focus-hero .tbac-emporium-art{width:100%;height:220px}.tbac-fifi-focus-side .tbac-emporium-art{width:105px;height:105px}.tbac-fifi-branded-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.tbac-fifi-branded-nav a{display:flex;flex-direction:column;gap:4px;min-height:76px;padding:13px 14px;border:1px solid #d7c394;border-radius:14px;background:#fffdf6;color:#4a321f;text-decoration:none;box-shadow:0 3px 9px rgba(73,48,29,.05)}.tbac-fifi-branded-nav a:hover,.tbac-fifi-branded-nav a:focus,.tbac-fifi-branded-nav a.is-active{border-color:#2e6b42;background:#eef7ec}.tbac-fifi-branded-nav strong{font:800 15px/1.2 Georgia,serif}.tbac-fifi-branded-nav small{font:700 11px/1.25 Arial,sans-serif;color:#6c593e}.tbac-store-departments,.tbac-store-subnav{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:10px 0}.tbac-store-departments a,.tbac-store-subnav a{padding:8px 10px;border:1px solid #d7c394;border-radius:999px;background:#fffdf6;color:#4b3523;text-decoration:none;font:800 11px/1.1 Arial,sans-serif}.tbac-store-departments a:hover,.tbac-store-departments a:focus,.tbac-store-departments a.is-active,.tbac-store-subnav a:hover,.tbac-store-subnav a:focus{background:#2d6540;border-color:#2d6540;color:#fff}.tbac-store-departments .tbac-trading-post-link{margin-left:auto;background:#2d6540;color:#fff;border-color:#245336}.tbac-coin-encouragement-compact{display:flex;align-items:center;gap:10px;margin:12px 0;padding:9px 12px}.tbac-coin-encouragement-compact strong{font-size:13px;white-space:nowrap}.tbac-coin-encouragement-compact span{font:600 12px/1.35 Arial,sans-serif;color:#6c593e}.tbac-store-tools{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(120px,.7fr)) auto auto;gap:8px;align-items:center;margin:16px 0;padding:12px;border:1px solid #dfd1ae;border-radius:14px;background:#fffdf8}.tbac-store-tools input[type=search],.tbac-store-tools select{width:100%;min-height:40px;border:1px solid #bda980;border-radius:9px;padding:8px;background:#fff}.tbac-store-checkbox{display:flex;align-items:center;gap:6px;font:700 11px/1.2 Arial,sans-serif;white-space:nowrap}.tbac-store-results-head{margin:18px 0 10px}.tbac-store-results-head>span{font:700 12px/1.2 Arial,sans-serif;color:#6c593e}.tbac-store-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tbac-store-product-grid .tbac-emporium-item{display:flex;flex-direction:column;gap:8px;padding:12px;min-width:0}.tbac-store-product-grid .tbac-emporium-artwrap{display:block;position:relative;width:100%;aspect-ratio:1/1;min-height:0;border-radius:12px;overflow:hidden;background:#fff}.tbac-store-product-grid .tbac-emporium-art{width:100%;height:100%;object-fit:contain;border:0;border-radius:12px}.tbac-store-item-title{display:block;color:#4b2d1f;text-decoration:none;font:800 17px/1.2 Georgia,serif}.tbac-store-card-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.8em;margin:7px 0!important}.tbac-store-price{margin-top:auto}.tbac-regular-price{text-decoration:line-through;color:#8c7861!important;font-weight:700!important}.tbac-new-ribbon{position:absolute;right:4px;top:4px;padding:4px 7px;border-radius:999px;background:#2e6b42;color:#fff;font:800 9px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}.tbac-store-view-link{font:800 11px/1.2 Arial,sans-serif;color:#2e6b42}.tbac-store-pagination{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:22px 0 4px}.tbac-store-pagination a{min-width:38px;padding:9px 10px;border:1px solid #cfbb8e;border-radius:9px;background:#fffdf6;color:#4b3523;text-align:center;text-decoration:none;font-weight:800}.tbac-store-pagination a.is-current{background:#2d6540;border-color:#2d6540;color:#fff}.tbac-store-empty{padding:30px;border:1px dashed #c8b487;border-radius:14px;text-align:center;background:#fffdf6}.tbac-store-detail{margin-top:18px;padding:18px;border:1px solid #d9c79f;border-radius:18px;background:#fffdf8}.tbac-store-detail-grid{display:grid;grid-template-columns:minmax(260px,42%) 1fr;gap:26px;margin-top:14px;align-items:start}.tbac-store-detail-art{min-height:340px;display:grid;place-items:center;border:1px solid #e2d7ba;border-radius:16px;background:#fff}.tbac-store-detail-art .tbac-emporium-art{width:100%;height:420px;object-fit:contain;border:0}.tbac-store-detail-art .tbac-emporium-placeholder{width:160px;height:160px}.tbac-store-detail h2{font-size:30px;margin:8px 0}.tbac-store-variant{font-weight:800;color:#2e6b42}.tbac-store-detail-description{font-size:16px;line-height:1.55}.tbac-store-detail-price{font-size:14px}.tbac-store-detail-price>span{margin-right:10px}
@media(max-width:980px){.tbac-store-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tbac-fifi-branded-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.tbac-store-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.tbac-store-search{grid-column:1/-1}.tbac-fifi-focus-grid{grid-template-columns:1fr}.tbac-fifi-focus-side{grid-template-columns:repeat(3,minmax(0,1fr))}.tbac-fifi-focus-side .tbac-store-card-compact{display:flex;flex-direction:column}.tbac-fifi-focus-side .tbac-emporium-art{width:100%;height:130px}}
@media(max-width:720px){.tbac-emporium-heading-row{flex-direction:column}.tbac-emporium-heading-row .tbac-emporium-balance{margin-top:0}.tbac-store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tbac-fifi-branded-nav{display:flex;overflow-x:auto;padding-bottom:4px}.tbac-fifi-branded-nav a{min-width:190px}.tbac-store-departments{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.tbac-store-departments a{white-space:nowrap}.tbac-store-departments .tbac-trading-post-link{margin-left:0}.tbac-store-subnav{overflow-x:auto;flex-wrap:nowrap}.tbac-store-subnav a{white-space:nowrap}.tbac-store-tools{grid-template-columns:1fr 1fr}.tbac-store-search{grid-column:1/-1}.tbac-store-tools .tbac-button{width:100%}.tbac-fifi-focus-hero .tbac-store-card-compact{display:flex;flex-direction:column}.tbac-fifi-focus-side{grid-template-columns:1fr}.tbac-fifi-focus-side .tbac-store-card-compact{display:grid;grid-template-columns:100px 1fr}.tbac-coin-encouragement-compact{align-items:flex-start;flex-direction:column}.tbac-store-detail-grid{grid-template-columns:1fr}.tbac-store-detail-art .tbac-emporium-art{height:320px}}
@media(max-width:430px){.tbac-store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tbac-store-product-grid .tbac-emporium-item{padding:9px}.tbac-store-item-title{font-size:14px}.tbac-store-card-description{font-size:12px}.tbac-item-badges span{font-size:8px}.tbac-shop-meta{font-size:10px}.tbac-store-tools{grid-template-columns:1fr}.tbac-store-search{grid-column:auto}}


/* v0.3.56 Clover Coin earning/help panel */
.tbac-coin-ways{margin:14px 0 18px;border:1px solid #d9c79f;border-radius:14px;background:#fff9e8;overflow:hidden}
.tbac-coin-ways>summary{cursor:pointer;padding:12px 14px;font:700 13px/1.35 Arial,sans-serif;color:#4b3523;list-style-position:inside}
.tbac-coin-ways[open]>summary{border-bottom:1px solid #e1d4b4;background:#fff5d9}
.tbac-coin-ways-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px}
.tbac-coin-ways-grid article{padding:12px;border:1px solid #e0d3b3;border-radius:12px;background:#fffdf7}
.tbac-coin-ways-grid article>strong{font:800 14px/1.2 Georgia,serif;color:#4b2d1f}.tbac-coin-ways-grid p{margin:6px 0 8px;font:600 11px/1.4 Arial,sans-serif;color:#6c593e}
.tbac-need-coins{text-align:center;text-decoration:none}.tbac-parent-clover-card{scroll-margin-top:100px}
@media(max-width:900px){.tbac-coin-ways-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.tbac-coin-ways-grid{grid-template-columns:1fr}}

/* Scraggletooth's Trading Post */
.tbac-scrag-focus{margin:20px 0 18px;padding:18px;border:1px solid #9c7a52;border-radius:18px;background:linear-gradient(135deg,#f6ead6,#e8d0ad)}
.tbac-scrag-focus .tbac-store-section-heading p{margin:4px 0 0}.tbac-scrag-nav a{background:#fbf4e9;border-color:#b8956c}.tbac-scrag-nav a:hover,.tbac-scrag-nav a:focus,.tbac-scrag-nav a.is-active{background:#4c3928;border-color:#4c3928;color:#fff}.tbac-scrag-nav a.is-active small,.tbac-scrag-nav a:hover small,.tbac-scrag-nav a:focus small{color:#f4e7d5}
.tbac-trading-card,.tbac-scrag-stash-card{position:relative}.tbac-trade-ribbon,.tbac-scrag-ribbon{position:absolute;left:6px;top:6px;z-index:3;padding:5px 8px;border-radius:999px;color:#fff;font:800 9px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em}.tbac-trade-ribbon{background:#5b4a3a}.tbac-scrag-ribbon{background:#7b4e1f}
.tbac-trading-tools{grid-template-columns:minmax(240px,1fr) minmax(160px,.35fr) auto}.tbac-trading-sell-panel,.tbac-trading-my-panel{margin-top:18px;padding:18px;border:1px solid #d8c8a6;border-radius:18px;background:#fffdf8}.tbac-trading-sell-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.tbac-trading-sell-card,.tbac-trading-manage-card{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:14px;border:1px solid #dfd0ad;border-radius:14px;background:#fff}.tbac-trading-manage-list{display:grid;gap:12px;margin-top:16px}.tbac-trading-manage-art{width:116px;height:116px;display:grid;place-items:center;border:1px solid #e1d6bb;border-radius:12px;background:#fff;overflow:hidden}.tbac-trading-manage-art .tbac-emporium-art{width:100%;height:100%;object-fit:contain;border:0}.tbac-trading-manage-art .tbac-emporium-placeholder{width:88px;height:88px}
.tbac-trading-sell-card form,.tbac-trading-inline-form{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin-top:10px}.tbac-trading-sell-card label,.tbac-trading-inline-form label{font:700 11px/1.2 Arial,sans-serif;color:#4c3928}.tbac-trading-sell-card input[type=number],.tbac-trading-inline-form input[type=number]{width:100px;min-height:38px;margin-top:4px;border:1px solid #bda980;border-radius:8px;padding:7px;background:#fff}.tbac-trading-my-panel .tbac-store-section-heading{align-items:flex-start}
@media(max-width:800px){.tbac-trading-sell-grid{grid-template-columns:1fr}.tbac-trading-tools{grid-template-columns:1fr 1fr}.tbac-trading-tools .tbac-store-search{grid-column:1/-1}}
@media(max-width:560px){.tbac-trading-sell-card,.tbac-trading-manage-card{grid-template-columns:84px 1fr}.tbac-trading-manage-art{width:82px;height:82px}.tbac-trading-tools{grid-template-columns:1fr}.tbac-trading-tools .tbac-store-search{grid-column:auto}.tbac-trading-sell-card form,.tbac-trading-inline-form{align-items:stretch;flex-direction:column}.tbac-trading-sell-card input[type=number],.tbac-trading-inline-form input[type=number]{width:100%}}

/* v0.3.69 public membership benefits · theme-isolated branded experience */
/* v0.3.71 · Shared branded Adventure Club page contract.
   New plugin-owned public experiences opt into .tbac-branded-app-page so Kadence
   never supplies a duplicate masthead, page-title hero, boxed article canvas,
   narrow content width, or theme footer around the Adventure Club UI. */
body.tbac-branded-app-page #masthead,
body.tbac-branded-app-page .entry-hero,
body.tbac-branded-app-page header.entry-header,
body.tbac-branded-app-page .site-footer{display:none!important}
body.tbac-branded-app-page .content-container.site-container,
body.tbac-branded-app-page #primary,
body.tbac-branded-app-page .content-area,
body.tbac-branded-app-page .site-main,
body.tbac-branded-app-page article.entry,
body.tbac-branded-app-page .entry-content-wrap,
body.tbac-branded-app-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.tbac-branded-app-page article.entry,
body.tbac-branded-app-page .content-bg,
body.tbac-branded-app-page .entry-content-wrap{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body.tbac-branded-app-page #inner-wrap{background:#efe8d7}
.tbac-membership-benefits-stage{box-sizing:border-box;width:auto;margin-inline:calc(50% - 50vw);padding:clamp(30px,4vw,58px) max(18px,calc((100vw - 1240px)/2)) clamp(46px,6vw,78px);overflow:hidden;background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.72),transparent 28%),radial-gradient(circle at 88% 15%,rgba(211,163,61,.18),transparent 24%),linear-gradient(180deg,#f4efdf 0%,#e7dcc1 100%);color:#3f2a1d;font-family:Arial,Helvetica,sans-serif}
.tbac-membership-benefits-stage *{box-sizing:border-box}
.tbac-membership-benefits-shell{width:100%;max-width:1220px;margin:0 auto;padding:0;color:#3f2a1d;font-family:Arial,Helvetica,sans-serif}
.tbac-membership-benefits-stage .tbac-eyebrow{margin:0 0 8px;color:#2a6842;font:900 12px/1.25 Arial,Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.tbac-membership-benefits-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(30px,5vw,58px) clamp(22px,5vw,64px);border:3px solid #cfa33e;border-radius:28px;background:linear-gradient(135deg,#153820 0%,#285f3b 58%,#173421 100%);box-shadow:0 20px 44px rgba(38,28,18,.24);text-align:center;color:#fff}
.tbac-membership-benefits-hero:before,.tbac-membership-benefits-hero:after{content:"";position:absolute;z-index:-1;border-radius:50%;background:rgba(255,255,255,.055)}
.tbac-membership-benefits-hero:before{width:360px;height:360px;left:-180px;top:-210px}.tbac-membership-benefits-hero:after{width:270px;height:270px;right:-120px;bottom:-165px}
.tbac-membership-benefits-hero .tbac-eyebrow{color:#f2cf70}
.tbac-membership-benefits-hero h1{max-width:940px;margin:4px auto 14px!important;color:#fff!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(34px,5vw,62px)!important;font-weight:800!important;line-height:1.02!important;letter-spacing:-.015em;text-shadow:0 2px 0 rgba(0,0,0,.16)}
.tbac-membership-benefits-intro{max-width:850px;margin:0 auto!important;color:#fff9e9!important;font:700 clamp(15px,1.8vw,19px)/1.55 Arial,Helvetica,sans-serif!important}
.tbac-membership-current-status{display:flex;justify-content:center;align-items:center;gap:8px 18px;flex-wrap:wrap;max-width:850px;margin:24px auto 0;padding:12px 18px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(255,250,235,.96);box-shadow:0 7px 18px rgba(0,0,0,.12);color:#4f3a25;font:800 12px/1.35 Arial,Helvetica,sans-serif}.tbac-membership-current-status strong{color:#245d39}
.tbac-membership-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:26px 0;align-items:stretch}
.tbac-membership-tier{position:relative;display:flex;flex-direction:column;min-width:0;min-height:100%;padding:27px 24px 24px;border:2px solid #c6b388;border-top-width:7px;border-radius:24px;background:rgba(255,252,244,.98);box-shadow:0 12px 26px rgba(52,31,17,.12);transition:transform .18s ease,box-shadow .18s ease}
.tbac-membership-tier:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(52,31,17,.16)}
.tbac-tier-visitor{border-top-color:#7b8c81}.tbac-tier-free{border-top-color:#2e7048}.tbac-tier-premium{border-color:#c79321;border-top-color:#c79321;background:linear-gradient(155deg,#fffdf2 0%,#fff2b9 100%);box-shadow:0 16px 34px rgba(129,87,13,.18)}
.tbac-membership-tier.is-current{box-shadow:0 0 0 5px rgba(45,101,64,.15),0 14px 28px rgba(52,31,17,.16)}
.tbac-membership-tier h2{margin:2px 0 8px!important;color:#4a2d1d!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(25px,2.5vw,35px)!important;font-weight:800!important;line-height:1.02!important;letter-spacing:-.01em}
.tbac-membership-tier-subtitle{min-height:46px;margin:0 0 14px!important;color:#6c593e!important;font:700 14px/1.45 Arial,Helvetica,sans-serif!important}
.tbac-membership-tier ul{display:grid;gap:11px;margin:8px 0 24px!important;padding:0!important;list-style:none!important;flex:1}.tbac-membership-tier li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:start;margin:0!important;padding:0!important;color:#473a2d!important;font:650 13.5px/1.48 Arial,Helvetica,sans-serif!important}.tbac-membership-tier li:before{display:none!important}
.tbac-membership-check{display:grid;place-items:center;width:20px;height:20px;margin-top:1px;border-radius:50%;background:#2e6b42;color:#fff;font:900 12px/1 Arial,Helvetica,sans-serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.tbac-membership-premium-badge,.tbac-membership-youare{align-self:flex-start;margin:-15px 0 13px;padding:7px 10px;border-radius:999px;font:900 10px/1 Arial,Helvetica,sans-serif;letter-spacing:.055em;text-transform:uppercase}.tbac-membership-premium-badge{background:#173d28;color:#fff;box-shadow:0 3px 7px rgba(0,0,0,.14)}.tbac-membership-youare{background:#e5f1e5;color:#265c37;border:1px solid #8eb096}.tbac-tier-premium .tbac-membership-youare{margin-top:0}
.tbac-membership-tier .tbac-button,.tbac-membership-bottom-actions .tbac-button{display:flex!important;align-items:center;justify-content:center;min-height:48px;border:0!important;border-radius:13px!important;padding:13px 17px!important;text-align:center!important;text-decoration:none!important;font:900 12px/1.25 Arial,Helvetica,sans-serif!important;letter-spacing:.015em;white-space:normal!important;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}
.tbac-membership-tier .tbac-button{width:100%;margin-top:auto}.tbac-membership-tier .tbac-button:hover,.tbac-membership-tier .tbac-button:focus-visible,.tbac-membership-bottom-actions .tbac-button:hover,.tbac-membership-bottom-actions .tbac-button:focus-visible{transform:translateY(-1px);filter:brightness(1.06);outline:3px solid rgba(36,95,55,.25);outline-offset:2px}
.tbac-membership-checkout-actions{display:grid;gap:10px}.tbac-membership-coming{margin:10px 0 0!important;color:#72552d!important;font:700 11px/1.45 Arial,Helvetica,sans-serif!important}
.tbac-membership-bottom-cta{display:block;padding:clamp(28px,4vw,44px);border:3px solid #cfa33e;border-radius:26px;background:linear-gradient(135deg,#173d28 0%,#285f3b 70%,#1f4e31 100%);box-shadow:0 15px 34px rgba(38,28,18,.18);text-align:center;color:#fff}
.tbac-membership-bottom-cta>div{min-width:0}.tbac-membership-bottom-cta .tbac-eyebrow{color:#f2cf70}.tbac-membership-bottom-cta h2{max-width:900px;margin:4px auto 10px!important;color:#fff!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(30px,4vw,46px)!important;font-weight:800!important;line-height:1.05!important}.tbac-membership-bottom-cta p{max-width:760px;margin:0 auto!important;color:#fff8e6!important;font:650 15px/1.55 Arial,Helvetica,sans-serif!important}
.tbac-membership-bottom-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:980px;margin:24px auto 0}.tbac-membership-bottom-actions .tbac-button{width:100%;min-width:0}.tbac-membership-bottom-actions .tbac-button:not(.tbac-secondary):not(.tbac-premium-choice){background:linear-gradient(#fffdf5,#eee0bb)!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55),0 4px 0 #9f8a58!important;color:#245d39!important}.tbac-membership-bottom-actions .tbac-secondary{background:linear-gradient(#5b956b,#39764e)!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.18),0 4px 0 #153820!important;color:#fff!important}.tbac-membership-bottom-actions .tbac-premium-choice{background:linear-gradient(#f5cf67,#cf9829)!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.38),0 4px 0 #805b12!important;color:#2f2416!important}.tbac-membership-bottom-actions .tbac-button:not(.tbac-secondary):not(.tbac-premium-choice):hover,.tbac-membership-bottom-actions .tbac-button:not(.tbac-secondary):not(.tbac-premium-choice):focus-visible{color:#245d39!important}.tbac-membership-bottom-actions .tbac-secondary:hover,.tbac-membership-bottom-actions .tbac-secondary:focus-visible{color:#fff!important}.tbac-membership-bottom-actions .tbac-premium-choice:hover,.tbac-membership-bottom-actions .tbac-premium-choice:focus-visible{color:#2e2112!important}
@media(max-width:1040px){.tbac-membership-benefits-stage{padding-inline:18px}.tbac-membership-compare-grid{gap:14px}.tbac-membership-tier{padding:23px 19px 21px}.tbac-membership-tier li{font-size:12.8px}.tbac-membership-bottom-actions{gap:9px}}
@media(max-width:780px){.tbac-membership-compare-grid{grid-template-columns:1fr}.tbac-membership-tier-subtitle{min-height:0}.tbac-membership-bottom-actions{grid-template-columns:1fr}.tbac-membership-benefits-stage{padding-top:22px}.tbac-membership-benefits-hero,.tbac-membership-bottom-cta{border-radius:20px}.tbac-membership-tier{border-radius:19px}}
@media(max-width:520px){.tbac-membership-benefits-stage{padding-inline:12px;padding-bottom:38px}.tbac-membership-benefits-hero,.tbac-membership-bottom-cta{padding:24px 17px;border-width:2px}.tbac-membership-tier{padding:21px 17px;border-width:2px;border-top-width:6px}.tbac-membership-current-status{border-radius:16px}.tbac-membership-tier .tbac-button,.tbac-membership-bottom-actions .tbac-button{min-height:46px}}

/* v0.3.64 · Build & Visit My Adventure Passport Welcome Center */
/* v0.3.71 · Adventure Passport is a full-width branded app page, not a Kadence article. */
.tbac-passport-welcome-stage{box-sizing:border-box;width:auto;margin-inline:calc(50% - 50vw);padding:clamp(30px,4vw,56px) max(18px,calc((100vw - 1240px)/2)) clamp(48px,6vw,78px);overflow:hidden;background:radial-gradient(circle at 8% 5%,rgba(255,255,255,.72),transparent 27%),radial-gradient(circle at 92% 10%,rgba(214,169,73,.20),transparent 25%),linear-gradient(180deg,#f4efdf 0%,#e9dfc7 100%)}
.tbac-passport-welcome-stage .tbac-passport-welcome-shell{width:100%;max-width:1220px;margin:0 auto;padding:0}
body.tbac-passport-welcome-page .tbac-passport-welcome-hero{border-color:#cfa33e;background:linear-gradient(135deg,#fffdf5 0%,#f8efcf 100%);box-shadow:0 18px 40px rgba(48,36,19,.17)}
body.tbac-passport-welcome-page .tbac-passport-welcome-card,body.tbac-passport-welcome-page .tbac-passport-earn-section{box-shadow:0 10px 24px rgba(48,36,19,.11)}
@media(max-width:640px){.tbac-passport-welcome-stage{padding:18px 10px 38px}}
.tbac-passport-welcome-shell{max-width:1180px;margin:28px auto 56px;padding:0 18px;color:#172c50}.tbac-passport-welcome-shell *{box-sizing:border-box}.tbac-passport-welcome-hero,.tbac-passport-welcome-card,.tbac-passport-live-status,.tbac-passport-earn-section,.tbac-coming-soon-card,.tbac-parent-notifications{background:linear-gradient(180deg,#fffdf5 0%,#f8efcf 100%);border:3px solid #d6ad4f;border-radius:26px;box-shadow:0 12px 30px rgba(23,44,80,.18);padding:26px}.tbac-passport-welcome-hero{display:grid;grid-template-columns:minmax(180px,300px) 1fr;gap:30px;align-items:center}.tbac-passport-welcome-hero-art{display:flex;align-items:center;justify-content:center}.tbac-passport-welcome-hero-art img{display:block;width:min(100%,280px);height:auto;filter:drop-shadow(0 8px 10px rgba(0,0,0,.16))}.tbac-passport-welcome-hero h1,.tbac-passport-welcome-card h2,.tbac-passport-earn-section h2,.tbac-coming-soon-card h1{color:#173662;margin:.15em 0 .35em;line-height:1.03}.tbac-passport-welcome-hero h1{font-size:clamp(2rem,5vw,4rem)}.tbac-passport-welcome-hero p,.tbac-passport-welcome-card p,.tbac-passport-earn-section p{font-size:1.04rem;line-height:1.6}.tbac-passport-welcome-actions,.tbac-passport-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.tbac-passport-request-success{margin:18px 0;padding:14px 18px;background:#e8f7df;border:2px solid #5c9e43;border-radius:16px;color:#234a25;text-align:center}.tbac-passport-live-status{margin-top:20px;background:linear-gradient(180deg,#eef8ff,#dcefff)}.tbac-passport-live-status>div:first-child{display:flex;justify-content:space-between;gap:14px;align-items:end}.tbac-passport-live-status h2{margin:0;color:#173662}.tbac-passport-live-stats{display:grid!important;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.tbac-passport-live-stats article{background:#fff;border:2px solid #c5d9ea;border-radius:16px;padding:15px;text-align:center}.tbac-passport-live-stats strong{display:block;font-size:1.6rem;color:#173662}.tbac-passport-live-stats span{display:block;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.tbac-passport-welcome-card,.tbac-passport-earn-section{margin-top:20px}.tbac-passport-grownup-card,.tbac-clover-explainer,.tbac-premium-passport-card{display:grid;grid-template-columns:1.45fr .85fr;gap:24px;align-items:center}.tbac-passport-grownup-card aside,.tbac-clover-explainer aside,.tbac-premium-passport-card>div:last-child{background:rgba(255,255,255,.72);border:2px solid rgba(23,54,98,.15);border-radius:18px;padding:18px}.tbac-passport-grownup-card ul,.tbac-clover-explainer ul{margin:10px 0 0;padding-left:20px}.tbac-passport-grownup-card li,.tbac-clover-explainer li{margin:.38em 0}.tbac-passport-two-column{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tbac-passport-rule,.tbac-passport-highlight{padding:13px 15px;border-radius:14px;background:#fff7d9;border:1px solid #e3c56e}.tbac-passport-compare-mini{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.tbac-passport-compare-mini>div{background:#fff;border:2px solid #e0d4ae;border-radius:16px;padding:14px}.tbac-passport-compare-mini strong,.tbac-passport-compare-mini span{display:block}.tbac-passport-compare-mini span{margin-top:5px;font-size:.9rem}.tbac-big-coin-balance{display:block;font-size:clamp(2.1rem,6vw,4rem);font-weight:900;color:#173662;line-height:1}.tbac-clover-request-form{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:16px}.tbac-clover-request-form small{font-size:.78rem;line-height:1.35;color:#52606f}.tbac-passport-shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.tbac-passport-shop-grid article{background:#fff;border:2px solid #e0d4ae;border-radius:18px;padding:18px}.tbac-passport-shop-grid h3{margin-top:0;color:#173662}.tbac-premium-passport-card{background:linear-gradient(135deg,#fff8d2 0%,#f8e4a2 55%,#dbefff 100%)}.tbac-premium-status-pill{display:inline-block;background:#173662;color:#fff;border-radius:999px;padding:9px 14px;font-weight:900;text-align:center}.tbac-passport-activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.tbac-passport-activity-grid a{display:flex;flex-direction:column;min-height:170px;text-decoration:none!important;background:#fff;border:2px solid #d9c685;border-radius:18px;padding:17px;color:#173662!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.tbac-passport-activity-grid a:hover,.tbac-passport-activity-grid a:focus-visible{color:#173662!important;background:#fffdf6!important;border-color:#a97c21;box-shadow:0 8px 18px rgba(23,54,98,.15);transform:translateY(-2px);outline:3px solid rgba(23,54,98,.24);outline-offset:2px}.tbac-passport-activity-grid strong{font-size:1.04rem}.tbac-passport-activity-grid span{font-size:.88rem;line-height:1.42;margin:8px 0;flex:1}.tbac-passport-activity-grid b{font-size:.8rem}.tbac-coming-soon-card{text-align:center;max-width:820px;margin:60px auto}.tbac-coming-soon-card h2{color:#bd2736}.tbac-coming-soon-card>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.tbac-parent-notifications{margin:16px 0;background:linear-gradient(180deg,#fff5dc,#ffe6a7);border-color:#d89a2c}.tbac-parent-notification-list{display:grid;gap:10px}.tbac-parent-notification{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#fff;border:2px solid #e7c276;border-radius:16px;padding:14px 16px}.tbac-parent-notification p{margin:.25em 0}.tbac-parent-notification-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tbac-parent-notification-actions form{margin:0}.tbac-passport-welcome-shell .tbac-button:hover,.tbac-passport-welcome-shell .tbac-button:focus-visible,.tbac-parent-notifications .tbac-button:hover,.tbac-parent-notifications .tbac-button:focus-visible{color:#fff!important;text-decoration:none!important}.tbac-passport-welcome-shell .tbac-button.tbac-secondary:hover,.tbac-passport-welcome-shell .tbac-button.tbac-secondary:focus-visible,.tbac-parent-notifications .tbac-button.tbac-secondary:hover,.tbac-parent-notifications .tbac-button.tbac-secondary:focus-visible{color:#173662!important}
@media(max-width:900px){.tbac-passport-welcome-hero{grid-template-columns:180px 1fr}.tbac-passport-live-stats{grid-template-columns:repeat(2,1fr)}.tbac-passport-grownup-card,.tbac-clover-explainer,.tbac-premium-passport-card{grid-template-columns:1fr}.tbac-passport-activity-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.tbac-passport-welcome-shell{padding:0 10px;margin-top:14px}.tbac-passport-welcome-hero{grid-template-columns:1fr;text-align:center;padding:18px}.tbac-passport-welcome-hero-art img{width:min(58vw,220px)}.tbac-passport-welcome-actions,.tbac-passport-card-actions{justify-content:center}.tbac-passport-two-column,.tbac-passport-shop-grid,.tbac-passport-compare-mini{grid-template-columns:1fr}.tbac-passport-live-stats{grid-template-columns:1fr 1fr}.tbac-passport-welcome-card,.tbac-passport-live-status,.tbac-passport-earn-section,.tbac-coming-soon-card{padding:18px;border-radius:20px}.tbac-passport-activity-grid{grid-template-columns:1fr}.tbac-passport-activity-grid a{min-height:0}.tbac-parent-notification{align-items:flex-start;flex-direction:column}.tbac-parent-notification-actions{width:100%}}
.tbac-passport-family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.tbac-passport-family-grid article{background:#fff;border:2px solid #dfd0a3;border-radius:17px;padding:16px}.tbac-passport-family-grid strong,.tbac-passport-family-grid span{display:block}.tbac-passport-family-grid strong{font-size:1.2rem;color:#173662;margin-bottom:8px}.tbac-passport-family-grid span{margin:4px 0;font-size:.9rem}.tbac-passport-family-grid .tbac-text-link{display:inline-block;margin-top:10px;font-weight:800}
@media(max-width:800px){.tbac-passport-family-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.tbac-passport-family-grid{grid-template-columns:1fr}}
