/* Member home: favorites above tier groups (short slide on click), account-scoped favorites, mytool tabs as separate cards. */
.member-home .catalog-section { margin-top:30px; padding-top:0; }
.member-home .catalog-section > .section-head { margin-bottom:18px; }
.member-home .catalog-section .section-kicker { display:none; }
.member-home .catalog-section h1 { font-size:clamp(1.5rem,3vw,2rem); }
.member-home .catalog-section .section-copy { margin-top:8px; font-size:.88rem; }
.member-home .account-zone { margin-bottom:20px; }
.member-home .period-state { padding:10px 14px; font-size:.78rem; }
.launcher { display:flex; flex-direction:column; gap:24px; }
.launcher h2 { color:var(--muted); font-size:.84rem; font-weight:650; margin:0 0 12px; }
.launcher-favorites { margin-bottom:24px; padding:16px; border:1px solid var(--border); border-radius:18px; background:var(--cardhover); }
.launcher-favorites-empty { margin:0 0 24px; color:var(--muted); font-size:.82rem; }
.launcher .catalog-group-head { flex-wrap:wrap; }
.launcher-grid, .law-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.law-card { display:block; min-width:0; padding:16px 18px; border:1px solid var(--border); border-radius:16px; background:var(--card); text-decoration:none; transition:border-color .15s; }
.law-card:hover, .law-card:focus-visible { border-color:var(--accent); }
.law-card .launch-title { display:block; padding-right:0; font-size:.95rem; }
.law-card .launch-desc { margin-bottom:0; }
.launch-card { position:relative; min-width:0; border:1px solid var(--border); border-radius:16px; background:var(--card); transition:border-color .15s; }
.launch-card.is-favorite { border-color:color-mix(in srgb,var(--accent) 45%,var(--border)); }
.launch-card:has(.launch-open:hover), .launch-card:focus-within { border-color:var(--accent); }
.launch-open { display:flex; flex-direction:column; align-items:flex-start; width:100%; height:100%; min-height:148px; padding:22px 18px 18px; border:0; border-radius:16px; background:transparent; color:var(--fg); font:inherit; text-align:left; text-decoration:none; cursor:pointer; }
.launch-title { padding-right:28px; color:var(--title); font-size:1.06rem; font-weight:750; line-height:1.45; word-break:keep-all; }
.launch-desc { display:block; margin:7px 0 16px; color:var(--muted); font-size:.8rem; line-height:1.5; word-break:keep-all; }
.launch-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:auto; color:var(--muted); font-size:.7rem; }
.launch-tier { padding:3px 7px; border-radius:6px; background:var(--hover); }
.launch-status.available { color:var(--bready-fg); }
.favorite-toggle { position:absolute; top:10px; right:7px; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border:0; border-radius:9px; background:transparent; color:var(--muted); font-size:1.4rem; cursor:pointer; }
.favorite-toggle[aria-pressed="true"] { color:var(--accent); }
.favorite-toggle:hover { background:var(--hover); }
.launcher .unavailable { color:var(--muted); cursor:default; }
.member-home .guide-section { margin-top:32px; }
.member-home .guide-section .section-kicker, .member-home .guide-section .section-copy, .member-home .guide-card p, .member-home .guide-meta, .member-home .guide-link { display:none; }
.member-home .guide-section h2 { font-size:1.15rem; }
.member-home .guide-card { min-height:0; padding:18px; }
.member-home .guide-card h3 { margin:0; font-size:.92rem; }
.member-home .guide-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.member-home .trust-section { display:none; }
@media(max-width:720px) { .launcher-grid, .law-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .member-home .top { flex-wrap:wrap; gap:8px; } .member-home .top-actions { min-width:0; flex:1 1 240px; } .member-home .who { max-width:100%; white-space:normal; overflow-wrap:anywhere; } }
@media(max-width:440px) { .launch-open { padding:18px 12px 14px; min-height:164px; } .launch-title { font-size:.96rem; } .launcher-grid { gap:9px; } .favorite-toggle { top:5px; right:2px; } }
@media(prefers-reduced-motion:reduce) { .launch-card { transition:none; } }
