:root { --bg:#f8f5ee; --card:#fffaf3; --ink:#3f302b; --accent:#80573d; --line:#e3d7c7; }
body { background:var(--bg); }
body[data-signed-in="true"] .member-layout { display:grid; grid-template-columns:240px minmax(0,1fr); max-width:1440px; margin:auto; }
body[data-signed-in="true"] main { max-width:none; width:100%; margin:0; padding:clamp(24px,4vw,56px); }
body[data-signed-in="true"] main > section { border:0; padding:0; background:none; }
body[data-signed-in="true"] #member-title { display:none; }
.member-sidebar { position:sticky; top:0; height:100vh; padding:28px 18px; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:24px; background:var(--card); }
.member-sidebar nav { display:grid; gap:6px; }
.member-sidebar a { text-decoration:none; border-radius:8px; padding:8px 12px; }
.member-sidebar a[aria-current] { background:#eadfce; font-weight:700; }
.member-brand { font-weight:750; letter-spacing:.06em; }
.member-profile { display:grid; padding:16px 12px; border:1px solid var(--line); border-radius:10px; font-size:.9rem; }
.member-profile span,.member-muted { color:#756052; }
.member-sidebar > .member-muted { margin-top:auto; font-size:.85rem; }
.member-welcome { padding-block:12px 28px; }
.member-welcome h2 { margin:0 0 .4rem; font-size:clamp(1.8rem,3vw,2.6rem); font-weight:650; }
.eyebrow { font-size:.78rem; color:var(--accent); letter-spacing:.08em; }
.member-primary { display:inline-flex; padding:.55rem 1rem; background:var(--accent); color:#fffaf3; border-radius:8px; text-decoration:none; font-weight:650; }
.member-section-heading { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; justify-content:space-between; margin-top:2rem; }
.tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.tool-card { display:block; min-width:0; padding:0; border:1px solid var(--line); border-radius:10px; overflow:hidden; text-decoration:none; background:var(--card); transition:transform .22s,border-color .22s; }
.tool-card:hover { transform:translateY(-3px); border-color:var(--accent); }
.tool-card img { display:block; width:100%; height:auto; aspect-ratio:8/5; object-fit:cover; }
.tool-card-copy { padding:18px; }
.tool-card h3 { margin:.35rem 0; font-size:1.15rem; color:var(--ink); }
.tool-card p { margin:.4rem 0 1rem; font-size:.92rem; color:#756052; }
.tool-tier { font-size:.75rem; color:var(--accent); }
.tool-card strong { font-size:.9rem; }
.tool-controls { display:flex; flex-wrap:wrap; gap:12px; margin-block:18px; }
.tool-controls input { flex:1; min-width:170px; margin:0; }
.tool-controls select { padding:.5rem; font:inherit; background:var(--card); color:var(--ink); border:1px solid var(--line); border-radius:8px; min-height:44px; max-width:100%; }
.tool-intro { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; padding-block:32px; }
.tool-intro h2 { font-size:clamp(1.8rem,3vw,2.6rem); margin:.4rem 0; }
.tool-intro img { width:100%; height:auto; border-radius:12px; }
.tool-explainer { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-block:24px; }
.tool-explainer section { border-radius:10px; }
#view-profile { max-width:650px; }
#view-reports,#view-premium { max-width:800px; }
@media(max-width:1100px) { .tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
  body[data-signed-in="true"] .member-layout { display:block; }
  body[data-signed-in="true"] main { padding:24px 16px 100px; }
  .member-sidebar { position:fixed; inset:auto 0 0; z-index:10; height:auto; border-right:0; border-top:1px solid var(--line); padding:6px; }
  .member-sidebar nav { display:flex; margin:0; justify-content:space-around; gap:0; }
  .member-sidebar nav a { padding:8px 5px; font-size:.8rem; }
  .member-sidebar > :not(nav) { display:none; }
  .tool-grid { grid-template-columns:1fr; }
  .tool-intro,.tool-explainer { grid-template-columns:1fr; }
  .tool-intro { gap:20px; }
}
@media(prefers-reduced-motion:reduce) { .tool-card { transition:none; } .tool-card:hover { transform:none; } }
