.catalog-card.is-complete{border-color:#68c8a1!important;background:linear-gradient(135deg,#214b43,#33283a)!important;box-shadow:0 0 0 2px #68c8a155,0 8px 24px #10181055}
.catalog-card.is-complete:hover{border-color:#91e2bc!important;transform:translateY(-2px)}
.completed-flag{display:inline-flex;align-items:center;gap:5px;margin:0 0 8px;padding:4px 9px;border:1px solid #79d6ab;border-radius:99px;background:#174a3d;color:#d9ffeb;font-size:11px;font-weight:800;letter-spacing:.04em}
.group-event-explainer{margin:12px 0 18px;padding:13px 16px;border:1px solid #9f6d7b;border-left:4px solid var(--accent);border-radius:14px;background:#543749;color:var(--ink)}
.group-event-explainer>b{font-size:15px}.group-event-explainer p{font-size:12px;line-height:1.5;margin:7px 0}.group-event-explainer details{font-size:12px}.group-event-explainer summary{min-height:34px;color:var(--accent);cursor:pointer}
.group-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 26px}.group-preset-card{position:relative;min-width:0;padding:16px;text-align:left;border:1px solid #a47888;border-radius:16px;background:#493043;color:var(--ink);cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.group-preset-card:hover{transform:translateY(-2px);border-color:#f0b37f;background:#563649}.group-preset-card h2{font-size:17px;line-height:1.3;margin:11px 0 7px}.group-preset-card p{font-size:12px;line-height:1.45;min-height:34px}.group-preset-card>b{display:block;margin-top:12px;color:#ffd09d;font-size:12px}.group-preset-card>.challenge-stars{float:right}.group-events-list{margin:20px 0}.group-events-list .fixture-card{margin-bottom:8px}
.group-invite-editor{margin:15px 0;padding:14px;border:1px solid #a47888;border-radius:14px;background:#452d40}.group-invite-editor h3{margin:0 0 6px;font-size:16px}.group-invite-editor>p{font-size:12px;line-height:1.45}.group-invite-editor>label{display:block;max-width:260px;margin-top:12px}.invitee-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:168px;overflow:auto;padding:8px;border:1px solid #8b6474;border-radius:10px;background:#392738}.invite-person{display:flex!important;align-items:center;gap:7px;min-height:36px;margin:0!important;padding:5px 7px;border:1px solid #795866;border-radius:8px;background:#523748}.invite-person input{width:18px!important;min-height:18px!important;margin:0!important}
.challenge-invite-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.challenge-invite-card{min-width:0;padding:15px;border:1px solid #9f6d7b;border-radius:15px;background:#493043;color:var(--ink)}.challenge-invite-card.pending{border-color:#eeb47b;box-shadow:inset 3px 0 #eeb47b}.challenge-invite-card.accepted{border-color:#68c8a1}.challenge-invite-card h3{margin:9px 0;font-size:17px}.challenge-invite-card p{font-size:12px;line-height:1.45}.challenge-invite-card .row{gap:8px;flex-wrap:wrap}.challenge-invite-card button{min-height:42px}.inbox-topbar{min-height:38px!important;padding:7px 11px!important;border:1px solid #a47888!important;border-radius:11px!important;color:var(--ink)!important;background:#503547!important;font-size:12px!important}.team-roster-card,.team-result-card{padding:13px;border:1px solid #a47888;border-radius:12px;background:#503547}.team-roster-card p,.team-result-card p{font-size:12px;line-height:1.45}.group-team-summary{margin:18px 0;padding:15px;border:1px solid #9f6d7b;border-radius:16px;background:#432d3e}.group-team-summary>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px;margin-top:10px}.team-result-card>b{display:block;margin:7px 0;color:#ffd09d}.group-waiting-card,.group-private-metrics{border-color:#cc9e77}.group-private-metrics h2{font-size:22px}.group-private-metrics p{font-size:13px;line-height:1.5}.challenge-reward-card{border-color:#e9b67e;background:linear-gradient(120deg,#533b36,#453044)}.challenge-reward-card strong{display:block;font-size:27px;color:#ffcf97;margin:7px 0}.challenge-reward-card p{font-size:12px;line-height:1.5}.challenge-points-overview{display:grid;grid-template-columns:minmax(180px,.55fr) 1fr;align-items:center;gap:20px;border-color:#d39d72;background:linear-gradient(115deg,#583a3c,#483348)}.challenge-points-overview strong{display:block;font-size:40px;color:#ffd09d}.challenge-points-overview p{font-size:13px;line-height:1.5}.catalog-card:focus-visible,.group-preset-card:focus-visible,.inbox-topbar:focus-visible{outline:3px solid #ffd09d;outline-offset:3px}
html[data-theme="light"] .catalog-card.is-complete{background:linear-gradient(135deg,#e4f5eb,#fff4e7)!important;color:#1c382f!important;border-color:#40956d!important}
html[data-theme="light"] .completed-flag{background:#ddf3e6;color:#194e37;border-color:#4a9b6e}
html[data-theme="light"] .group-event-explainer,html[data-theme="light"] .group-invite-editor,html[data-theme="light"] .group-waiting-card,html[data-theme="light"] .group-private-metrics,html[data-theme="light"] .group-team-summary,html[data-theme="light"] .challenge-points-overview,html[data-theme="light"] .challenge-reward-card{background:#fffaf3;color:#342331;border-color:#bd8d76}
html[data-theme="light"] .group-preset-card,html[data-theme="light"] .challenge-invite-card,html[data-theme="light"] .team-roster-card,html[data-theme="light"] .team-result-card,html[data-theme="light"] .invite-person,html[data-theme="light"] .inbox-topbar{background:#fffaf3;color:#342331;border-color:#c5a0a2}
@media(max-width:900px){.group-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.invitee-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.group-preset-grid,.challenge-invite-list{grid-template-columns:1fr;gap:9px}.group-preset-card{padding:13px}.group-preset-card h2{font-size:16px}.invitee-picker{grid-template-columns:repeat(2,minmax(0,1fr));max-height:150px}.group-invite-editor{padding:11px}.challenge-points-overview{grid-template-columns:1fr;gap:6px}.challenge-points-overview strong{font-size:32px}.inbox-topbar{min-width:44px;font-size:11px!important}.group-event-explainer{padding:11px 13px}.challenge-invite-card .row{flex-direction:row}}
@media(prefers-reduced-motion:reduce){.group-preset-card,.catalog-card.is-complete{transition:none}}
@media(max-width:560px){.inbox-label{display:none}.inbox-topbar{min-width:38px!important;padding:7px!important}}
