/* Origin: people, stories, and progress. */
:root { --text-muted:#a7b1c8; --text-subtle:#8995b2; }
body { background:#0b0e17; }
button, input, textarea, select { font:inherit; }
button:focus-visible, a:focus-visible { outline:2px solid #b8adff; outline-offset:4px; }
.ambient { opacity:.22; }
.topbar { background:rgba(11,14,23,.94); }
.brand-mark { background:linear-gradient(145deg,#a899ff,#6350dc); }
.shell { padding-top:0; }
.discovery-page { width:min(1220px,calc(100% - 48px)); margin:0 auto 60px; }
.origin-hero { display:grid; grid-template-columns:1.5fr 1fr; gap:40px; align-items:center; padding:70px 0 58px; border-bottom:1px solid #252b3d; overflow:hidden; overflow:clip; }
.origin-hero h1 { font-size:clamp(32px,4vw,54px); line-height:1.08; letter-spacing:-.055em; margin:16px 0 20px; max-width:740px; }
.origin-hero h1 span { color:#b5a7ff; }
.origin-hero p:not(.eyebrow) { max-width:580px; font-size:15px; line-height:1.75; color:#a5b0ca; }
.eyebrow { color:#9b91cd; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:24px; }
.primary-button { box-shadow:none; border-color:#a393fb; background:linear-gradient(115deg,#8e7af5,#6a56d9); }
.origin-orbit { position:relative; min-height:290px; border:1px solid #343049; border-radius:50%; max-width:330px; width:100%; justify-self:center; transform:rotate(-15deg); background:radial-gradient(ellipse at center,#46356844,transparent 66%); }
.origin-orbit::before { content:''; position:absolute; inset:42px -20px; border:1px solid #32364e; border-radius:50%; transform:rotate(55deg); }
.orbit-core { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) rotate(15deg); font-size:88px; font-weight:850; color:#c4b4ff; text-shadow:0 0 45px #8b70ff60; }
.orbit-label { position:absolute; transform:rotate(15deg); padding:10px 17px; border:1px solid #4a4263; border-radius:30px; font-size:12px; color:#ddd6f7; background:#181a2a; }
.orbit-a { top:0; left:20px; }.orbit-b { right:-32px; top:120px; }.orbit-c { bottom:0; left:8px; }
.discovery-layout { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:34px; padding-top:35px; }
.discovery-projects { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.discovery-aside { padding-top:40px; }
.purpose-card { position:sticky; top:100px; padding:23px; border:1px solid #303148; border-radius:18px; background:linear-gradient(150deg,#201d33,#131928); }
.purpose-card h2 { font-size:21px; line-height:1.3; letter-spacing:-.03em; margin:14px 0 24px; }
.purpose-card ol { padding-left:18px; display:grid; gap:25px; color:#b3a3f6; }
.purpose-card li { padding-left:5px; }.purpose-card strong { display:block; color:#e4e7f3; font-size:12px; }.purpose-card span { display:block; margin-top:5px; color:#9aa7c1; font-size:11px; line-height:1.7; }
.purpose-note { padding:25px 10px; font-size:11px; line-height:1.7; color:#8390aa; }.purpose-note strong { color:#bdc6db; }
.section-heading h2 { font-size:22px; letter-spacing:-.035em; }.section-heading .eyebrow { margin-bottom:5px; }
.updates-heading { margin-top:40px; }.discovery-main .feed-stack { display:grid; grid-template-columns:1fr; gap:20px; }
.discovery-main .media-stage { height:clamp(220px,30vw,390px); }
.project-story-card { display:flex; flex-direction:column; padding:22px; background:#121724; border-color:#2a3042; border-radius:16px; gap:0; }
.project-story-card .project-card-top { margin-bottom:19px; }.project-stage { color:#bdb3eb; background:#27223d; border:1px solid #42365d; border-radius:20px; padding:5px 9px; font-size:10px; }
.project-category { color:#8f9cbd; text-transform:uppercase; letter-spacing:.12em; font-size:9px; font-weight:750; margin:0 0 8px; }
.project-card-title { background:none; text-align:left; border:0; padding:0; color:#f2f0ff; cursor:pointer; }.project-card-title h2 { margin:0; font-size:20px; letter-spacing:-.04em; line-height:1.25; }.project-card-title:hover { color:#bbaaff; }
.project-card-summary { color:#a7b2cc; font-size:12px; line-height:1.7; min-height:42px; margin:12px 0; }.project-card-owner { color:#8a98b5; font-size:10px; }
.help-wanted-chip { color:#a3d5c4; font-size:10px; margin-bottom:12px; }.project-story-card .project-card-footer { margin-top:auto; display:flex; flex-direction:column; align-items:stretch; gap:14px; padding-top:16px; font-size:10px; border-color:#272d3e; }.project-card-actions { display:flex; justify-content:space-between; gap:8px; }
.project-story-card .quiet-button { font-size:11px; padding:8px 10px; }
.project-card.project-story-card { align-items:stretch; text-align:left; }
.project-card.project-story-card > .project-card-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.project-card.project-story-card > .project-card-footer { display:flex; gap:14px; }
.project-card.project-story-card .project-card-actions { display:flex; align-items:center; justify-content:space-between; }
.discovery-main .section-heading { display:flex; align-items:end; justify-content:space-between; gap:15px; margin-bottom:18px; }
.projects-page,.communities-page { padding-top:34px; }.project-directory-search select { background:#161b2a; color:#c7cfe2; border:1px solid #30394e; border-radius:10px; padding:10px; max-width:190px; }
.project-story-panel { min-width:0; background:#101521; }.story-hero { padding:clamp(24px,4vw,50px); background:radial-gradient(ellipse at 100% 0%,#4b376f55,transparent 65%),#141a2a; border-bottom:1px solid #2d3448; }.story-badges { display:flex; gap:12px; align-items:center; }.story-badges .project-category { margin:0; }.story-hero h1 { font-size:clamp(30px,4vw,48px); letter-spacing:-.045em; line-height:1.1; margin:24px 0 18px; }.story-lede { font-size:16px; color:#b8c2d9; line-height:1.7; max-width:680px; }.story-owner { display:flex; gap:10px; align-items:center; margin-top:20px; font-size:11px; }.story-numbers { display:flex; flex-wrap:wrap; gap:25px; margin-top:30px; color:#8f9ab5; font-size:11px; }.story-numbers strong { color:#dfdff4; margin-right:3px; }
.story-body { display:grid; gap:28px; padding:clamp(24px,4vw,48px); }.story-body h2 { font-size:24px; letter-spacing:-.04em; margin:8px 0 15px; }.story-narrative>p:not(.eyebrow),.ways-to-help>p:not(.eyebrow) { white-space:pre-wrap; line-height:1.85; color:#adb9d2; font-size:14px; }.ways-to-help { padding:25px; border:1px solid #34564e; border-radius:16px; background:linear-gradient(130deg,#19383170,#14202c); }.ways-to-help small { display:block; margin-top:14px; color:#849f9b; font-size:11px; }.story-latest .section-heading { margin-bottom:16px; }.report-project-link { justify-self:start; color:#7e8aa3; font-size:10px; }
.workspace-grid { margin-top:30px; }.server-sidebar { background:#0e131e; }.community-quick-actions { margin-top:14px; }.forum-panel { min-width:0; }
.project-editor-dialog { width:min(660px,calc(100vw - 32px)); max-height:90vh; overflow:auto; }.project-editor-pair { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.auth-field textarea { resize:vertical; min-height:70px; line-height:1.6; }.auth-field select { color:#e8e4ff; padding:12px; border:1px solid #353e54; border-radius:10px; background:#141827; }.editor-note { font-size:11px; color:#8996b3; line-height:1.6; margin:16px 0; }.auth-browse { margin-bottom:22px; font-size:12px; }.report-item { border-bottom:1px solid #30384c; padding:16px 0; }.report-item small { color:#939eba; }.report-item p { white-space:pre-wrap; line-height:1.6; }
.chat-message-list { max-height:60vh; overflow-y:auto; }.chat-panel { min-height:560px; }
.app-error { width:min(560px,calc(100% - 32px)); margin:64px auto; padding:28px; border:1px solid #353e54; border-radius:20px; background:#141827; overflow-wrap:anywhere; }
.app-error h1 { font-size:clamp(24px,5vw,32px); line-height:1.2; margin:12px 0; }
.app-error p { color:#a7b2cc; line-height:1.7; }
.app-error .primary-button { margin-top:12px; min-height:44px; }
.starter-strip { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 34px; padding:26px; border:1px solid #454065; border-radius:20px; background:linear-gradient(120deg,#211c38,#111e26); }
.starter-strip h2 { margin:6px 0; font-size:24px; }.starter-strip p { color:#b5bdd2; line-height:1.6; }.starter-strip .primary-button { flex-shrink:0; text-decoration:none; }
.starter-page { padding-top:40px; padding-bottom:60px; }.starter-page h1 { font-size:clamp(30px,5vw,48px); letter-spacing:-.04em; }.starter-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:28px 0; }
.starter-option { display:flex; flex-direction:column; gap:10px; padding:22px; border:1px solid #3a4058; border-radius:16px; color:#efedff; background:#131725; text-align:left; cursor:pointer; min-width:0; }.starter-option strong { font-size:17px; }.starter-option span { color:#acb5ce; line-height:1.6; }.starter-option[aria-pressed="true"] { border-color:#a491ff; background:#24203e; }.starter-option:focus-visible { outline:3px solid #9de0cf; outline-offset:3px; }
.starter-plan { border:1px solid #3a4058; border-radius:20px; padding:clamp(20px,4vw,36px); margin-bottom:24px; background:#121622; }.starter-plan ol { padding-left:24px; }.starter-plan li { padding:10px 0 10px 10px; color:#c7cee0; line-height:1.6; }.starter-plan li::marker { color:#b9adff; font-weight:700; }
@media(max-width:800px) { .starter-options { grid-template-columns:repeat(2,minmax(0,1fr)); }.starter-strip { align-items:flex-start; flex-direction:column; } }
@media(max-width:440px) { .starter-options { grid-template-columns:1fr; }.starter-page .hero-actions { align-items:stretch; flex-direction:column; } }
.media-load-error { position:absolute; inset:25% 15%; margin:0; display:grid; place-items:center; padding:16px; border-radius:12px; background:#141827; color:#a7b2cc; text-align:center; line-height:1.6; pointer-events:none; z-index:1; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
@media(max-width:1000px) { .discovery-layout { grid-template-columns:1fr; }.discovery-aside { display:none; }.origin-hero { grid-template-columns:1fr .6fr; }.origin-orbit { max-width:240px; min-height:220px; }.orbit-label { font-size:10px; }.orbit-b { right:-6px; top:90px; } }
@media(max-width:650px) { .discovery-page { width:calc(100% - 28px); }.origin-hero { grid-template-columns:1fr; padding:36px 0; }.origin-orbit { display:none; }.origin-hero h1 { font-size:38px; }.discovery-projects { grid-template-columns:1fr; }.project-editor-pair { grid-template-columns:1fr; }.project-directory-search { flex-wrap:wrap; }.project-directory-search select { flex:1; }.story-numbers { gap:14px; }.story-body { padding:20px; }.ways-to-help { padding:19px; } }
