/* Beehive Innovation Hub — v2 theme.
   Light, content-platform look ("Wikipedia, but inviting") — navy+gold kept
   as accent color, not the whole page background, so it still reads as the
   same brand as the marketing site and the logo. */

:root{
  --navy:#0b285f;
  --gold:#c8790a;       /* darker gold for AA contrast on white */
  --gold-bg:#fff6e6;
  --ink:#1c2333;
  --muted:#5b6472;
  --line:#e3e6ec;
  --bg:#fafbfd;
  --card:#ffffff;
  --card-line:#e3e6ec;
  --link:#0b5fae;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--bg);
  color:var(--ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.brand{font-family:'Sora',sans-serif;letter-spacing:-.01em;line-height:1.2}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.gold{color:var(--gold)}

header{position:sticky;top:0;z-index:50;background:var(--navy);border-bottom:1px solid rgba(0,0,0,.15)}
.nav{display:flex;align-items:center;justify-content:space-between;height:58px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1rem;color:#fff}
.brand:hover{text-decoration:none}
.logo{width:26px;height:29px;flex:none}
.navlinks{display:flex;gap:22px;font-size:.92rem;font-weight:600}
.navlinks a{color:#c7d3ea}
.navlinks a:hover,.navlinks a.active{color:#fff;text-decoration:none}
@media(max-width:760px){.navlinks{gap:14px;font-size:.85rem}}

main{position:relative;z-index:1}
.wrap.narrow{max-width:760px}

/* Landing / welcome */
.landing{padding:72px 0 56px;text-align:center}
.landing .logo-big{width:56px;height:63px;margin:0 auto 20px}
.landing h1{font-size:clamp(1.9rem,4.5vw,2.6rem);font-weight:800;margin-bottom:12px}
.landing p.lead{color:var(--muted);max-width:560px;margin:0 auto 40px;font-size:1.05rem}
.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:820px;margin:0 auto}
@media(max-width:640px){.choice-row{grid-template-columns:1fr}}
.choice-card{background:var(--card);border:1px solid var(--card-line);border-radius:16px;
  padding:34px 28px;text-align:left;transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  display:block}
.choice-card:hover{border-color:var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.06);transform:translateY(-2px);text-decoration:none}
.choice-card .icon{font-size:1.8rem;margin-bottom:14px}
.choice-card h3{font-size:1.2rem;font-weight:700;margin-bottom:8px;color:var(--ink)}
.choice-card p{color:var(--muted);font-size:.94rem}
.landing .stats{display:flex;justify-content:center;gap:36px;margin-top:44px;flex-wrap:wrap}
.landing .stat b{display:block;font-family:'Sora',sans-serif;font-size:1.5rem;color:var(--navy)}
.landing .stat span{color:var(--muted);font-size:.85rem}

/* Generic page head */
.pagehead{padding:36px 0 8px}
.pagehead .eyebrow{display:inline-block;font-family:'Sora',sans-serif;font-weight:700;font-size:.72rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.pagehead h1{font-size:clamp(1.5rem,3.4vw,2rem);font-weight:800;margin-bottom:8px}
.pagehead p{color:var(--muted);max-width:680px;font-size:.98rem}
.breadcrumbs{font-size:.85rem;color:var(--muted);margin-bottom:6px}
.breadcrumbs a{color:var(--muted);text-decoration:underline}

section.band{padding:34px 0}
.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;
  border-bottom:2px solid var(--navy);padding-bottom:8px}
.section-title h2{font-size:1.15rem;font-weight:800}
.section-title .see-all{font-size:.85rem;font-weight:600}

/* Leaderboard table */
.leaderboard{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--card-line);
  border-radius:10px;overflow:hidden}
.leaderboard th{text-align:left;font-family:'Sora',sans-serif;font-size:.72rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);background:#f2f4f8;padding:10px 14px;border-bottom:1px solid var(--card-line)}
.leaderboard td{padding:12px 14px;border-bottom:1px solid var(--card-line);font-size:.92rem;vertical-align:top}
.leaderboard tr:last-child td{border-bottom:none}
.leaderboard tr:hover td{background:#f9fafc}
.rank{font-family:'Sora',sans-serif;font-weight:800;color:var(--navy);width:36px}
.lb-title a{color:var(--ink);font-weight:600}
.lb-topic{color:var(--muted);font-size:.82rem;display:block;margin-top:2px}
.lb-score{font-family:'Sora',sans-serif;font-weight:800;color:var(--gold);text-align:right;white-space:nowrap}

/* Topic directory */
.topic-list{display:flex;flex-direction:column;gap:0;background:var(--card);border:1px solid var(--card-line);border-radius:10px;overflow:hidden}
.topic-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;
  border-bottom:1px solid var(--card-line);transition:background .1s ease}
.topic-row:last-child{border-bottom:none}
.topic-row:hover{background:#f9fafc;text-decoration:none}
.topic-row h3{font-size:1.02rem;font-weight:700;color:var(--ink);margin-bottom:3px}
.topic-row p{color:var(--muted);font-size:.86rem;max-width:600px}
.topic-count{font-family:'Sora',sans-serif;font-weight:800;color:var(--navy);font-size:.95rem;flex:none;text-align:right}
.topic-count span{display:block;font-weight:600;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}

/* Idea list (topic detail, suggested) */
.idea-list{display:flex;flex-direction:column;gap:12px}
.idea-row{display:block;background:var(--card);border:1px solid var(--card-line);border-radius:10px;
  padding:16px 18px;transition:border-color .15s ease}
.idea-row:hover{border-color:var(--gold);text-decoration:none}
.idea-row .top-line{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px}
.idea-row h3{font-size:1rem;font-weight:700;color:var(--ink)}
.idea-row p{color:var(--muted);font-size:.88rem}
.idea-row .topic-tag{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:4px}

.status-chip{display:inline-block;font-family:'Sora',sans-serif;font-size:.68rem;font-weight:800;
  letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:999px;flex:none}
.status-early{background:#eef0f4;color:var(--muted)}
.status-maturing{background:var(--gold-bg);color:#8a5800}
.status-matured{background:var(--navy);color:#fff}

.chip{font-family:'Sora',sans-serif;font-size:.76rem;font-weight:600;color:var(--navy);
  border:1px solid var(--card-line);background:#f2f4f8;border-radius:999px;padding:4px 12px;display:inline-block}

.btn{display:inline-block;background:var(--navy);color:#fff;font-weight:700;
  padding:11px 22px;border-radius:8px;font-family:'Sora',sans-serif;font-size:.92rem;border:none;cursor:pointer;
  transition:background .15s ease}
.btn:hover{background:#081d47;text-decoration:none}
.btn.gold-btn{background:var(--gold)}
.btn.gold-btn:hover{background:#a8660a}
.btn.ghost{background:transparent;color:var(--navy);border:1px solid var(--navy)}

/* Cell detail */
.cell-hero{padding:28px 0 16px}
.cell-hero .meta-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.cell-hero h1{font-size:clamp(1.6rem,3.6vw,2.2rem);font-weight:800;margin-bottom:12px}
.cell-hero .need{color:var(--muted);max-width:760px;font-size:1rem}

.callout{background:var(--gold-bg);border:1px solid #f0d9ab;border-radius:12px;padding:18px 22px;margin:20px 0}
.callout .kicker{margin-bottom:6px;font-family:'Sora',sans-serif;font-weight:700;font-size:.72rem;
  letter-spacing:.1em;text-transform:uppercase;color:#8a5800;display:block}
.callout p{color:var(--ink);font-size:.95rem}

.kicker{font-family:'Sora',sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--navy);margin-bottom:10px;display:block}

.feed{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--card-line);border-radius:10px;overflow:hidden}
.feed-item{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:18px 20px;border-bottom:1px solid var(--card-line)}
.feed-item:last-child{border-bottom:none}
@media(max-width:640px){.feed-item{grid-template-columns:1fr;gap:6px}}
.feed-tag{font-family:'Sora',sans-serif;font-size:.68rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);padding-top:2px}
.feed-item.is-agent{background:var(--gold-bg)}
.feed-item.is-agent .feed-tag{color:#8a5800}
.feed-body h4{font-size:.96rem;font-weight:700;margin-bottom:5px;color:var(--ink)}
.feed-body .who{color:var(--muted);font-size:.8rem;margin-bottom:6px;display:block}
.feed-body p{color:var(--ink);font-size:.92rem}

.votes-list{display:flex;flex-direction:column;gap:10px}
.vote-row{display:flex;gap:14px;align-items:flex-start;background:var(--card);
  border:1px solid var(--card-line);border-radius:10px;padding:13px 16px}
.vote-weight{font-family:'Sora',sans-serif;font-weight:800;color:var(--gold);font-size:1.05rem;flex:none;width:26px}
.vote-row p{color:var(--muted);font-size:.88rem}
.vote-row .who{color:var(--ink);font-weight:700;font-size:.85rem;display:block;margin-bottom:2px}

.outcome-banner{background:linear-gradient(160deg,var(--gold-bg),#fff);
  border:1px solid #f0d9ab;border-radius:12px;padding:22px}
.outcome-banner p{color:var(--ink);font-size:.98rem}

/* Steps (How it works) */
.steps{display:flex;flex-direction:column}
.step{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:22px 0;border-top:1px solid var(--card-line)}
.step:first-child{border-top:none}
@media(max-width:640px){.step{grid-template-columns:1fr;gap:8px}}
.stepnum{font-family:'Sora',sans-serif;font-weight:800;font-size:1.5rem;color:var(--gold)}
.step h3{font-size:1.1rem;font-weight:700;margin-bottom:6px}
.step p{color:var(--muted)}
.step .example{margin-top:10px}

.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:820px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.tiles{grid-template-columns:1fr}}
.tile{background:var(--card);border:1px solid var(--card-line);border-radius:10px;padding:18px}
.tile b{font-family:'Sora',sans-serif;color:var(--ink);font-size:.95rem;display:block;margin-bottom:5px}
.tile span{color:var(--muted);font-size:.86rem}

.pathways{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:820px){.pathways{grid-template-columns:1fr}}
.pathway{background:var(--card);border:1px solid var(--card-line);border-radius:10px;padding:20px;text-align:center}
.pathway .amount{font-family:'Sora',sans-serif;font-weight:800;color:var(--gold);font-size:1.3rem;margin:6px 0 4px}
.pathway span{color:var(--muted);font-size:.84rem}

/* Submit form */
.form-card{background:var(--card);border:1px solid var(--card-line);border-radius:12px;padding:28px}
.field{margin-bottom:20px}
.field label{display:block;font-family:'Sora',sans-serif;font-weight:700;font-size:.88rem;margin-bottom:6px;color:var(--ink)}
.field .hint{color:var(--muted);font-size:.8rem;margin-top:5px}
.field input[type=text],.field select,.field textarea{
  width:100%;border:1px solid var(--card-line);border-radius:8px;padding:11px 14px;font-family:inherit;
  font-size:.95rem;color:var(--ink);background:#fff}
.field textarea{resize:vertical;min-height:90px}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--navy);outline-offset:1px}

.preview-panel{margin-top:28px;border-top:2px dashed var(--card-line);padding-top:24px}
.preview-note{background:var(--gold-bg);border:1px solid #f0d9ab;border-radius:10px;padding:14px 18px;
  font-size:.88rem;color:#5a4000;margin-bottom:18px}
.preview-agent{background:var(--card);border:1px solid var(--card-line);border-radius:10px;padding:16px 18px;margin-bottom:10px}
.preview-agent .role{font-family:'Sora',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--gold);margin-bottom:6px;display:block}
.preview-agent p{font-size:.92rem;color:var(--ink)}

footer{border-top:1px solid var(--card-line);padding:32px 0;background:#fff;position:relative;z-index:1}
.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
  color:var(--muted);font-size:.85rem}

/* Session badge (header) */
.session-badge{color:#c7d3ea;font-size:.82rem;padding-left:6px;border-left:1px solid rgba(255,255,255,.2);margin-left:4px}
.session-badge strong{color:#fff}
.session-badge a{color:var(--gold-soft,#ffcb57)}

/* Login page */
.checkbox-field label{display:flex;align-items:flex-start;gap:8px;font-family:inherit;font-weight:400;font-size:.88rem;color:var(--ink)}
.checkbox-field input{margin-top:3px;flex:none}

/* Venture page: quick actions, private/session markers, comments, details */
.quick-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.backed-chip{background:var(--gold-bg);color:#8a5800;border-color:#f0d9ab}
.private-tag{font-size:.72rem;color:var(--muted);font-weight:600}
.private-callout{background:#f3f6ff;border-color:#dbe3fb}
.private-callout p{font-size:.9rem;margin-bottom:6px}
.private-callout p:last-child{margin-bottom:0}

details.contribution-history summary{cursor:pointer;list-style:none;font-family:'Sora',sans-serif;
  font-weight:700;font-size:1.02rem;color:var(--ink)}
details.contribution-history summary::-webkit-details-marker{display:none}
details.contribution-history summary::before{content:'▸ ';color:var(--gold)}
details.contribution-history[open] summary::before{content:'▾ '}
details.contribution-history .feed{margin-top:16px}

.comment-thread{margin-top:12px;padding-left:14px;border-left:2px solid var(--card-line);display:flex;flex-direction:column;gap:8px}
.comment-row{background:#f3f6ff;border:1px solid #dbe3fb;border-radius:8px;padding:8px 12px}
.comment-row p{font-size:.86rem;color:var(--ink);margin-top:3px}

details.reply-toggle{margin-top:10px}
details.reply-toggle summary{cursor:pointer;font-size:.8rem;font-weight:700;color:var(--navy);list-style:none}
details.reply-toggle summary::-webkit-details-marker{display:none}
.reply-form{margin-top:8px;display:flex;flex-direction:column;gap:8px;max-width:520px}
.reply-form textarea{border:1px solid var(--card-line);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:.86rem;min-height:60px}
.btn-sm{padding:7px 14px;font-size:.8rem;align-self:flex-start}

/* Radar / spider score chart */
.radar-wrap{display:flex;justify-content:center;background:var(--card);border:1px solid var(--card-line);
  border-radius:12px;padding:20px}
.radar-chart{width:100%;max-width:380px;height:auto;overflow:visible}
.radar-grid{fill:none;stroke:var(--card-line);stroke-width:1}
.radar-axis{stroke:var(--card-line);stroke-width:1}
.radar-fill{fill:rgba(200,121,10,.22);stroke:var(--gold);stroke-width:2}
.radar-dot{fill:var(--gold)}
.radar-label{font-family:'Sora',sans-serif;font-size:9.5px;fill:var(--muted);font-weight:600}
.radar-label-score{fill:var(--gold);font-weight:800}

/* Suggested Collaborators */
.collaborator-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.collaborator-card{background:var(--card);border:1px solid var(--card-line);border-radius:10px;
  padding:16px 18px;display:flex;flex-direction:column;gap:12px;justify-content:space-between}
.collaborator-card h3{font-size:.98rem;font-weight:700;color:var(--ink);margin-bottom:4px}
.collaborator-card p{color:var(--muted);font-size:.86rem}
.collaborator-card .btn-sm{align-self:flex-start}

/* Alternatives page */
.tradeoff{color:var(--muted);font-size:.85rem;margin-top:6px}

/* Hive cycle diagram (How It Works) */
.hive-cycle-wrap{display:flex;justify-content:center;background:var(--card);border:1px solid var(--card-line);
  border-radius:12px;padding:20px;margin-top:8px}
.hive-cycle-svg{width:100%;max-width:460px;height:auto;overflow:visible}
.hive-hex{fill:var(--card);stroke:var(--navy);stroke-width:2.5}
.hive-hex-center{fill:var(--navy);stroke:var(--gold);stroke-width:3}
.hive-center-outline{fill:none;stroke:var(--gold);stroke-width:2}
.hive-hex-label{font-family:'Sora',sans-serif;font-weight:800;font-size:15px;fill:var(--ink)}
.hive-arrow-line{stroke:var(--card-line);stroke-width:2}
.hive-arrow-head{fill:var(--gold)}
