/* BOMSociety Opportunity Engine — canonical application stylesheet.
   Readable decision work; one responsive cascade and one visual family. */
:root{color-scheme:dark}
html,body{margin:0;background:#01050a;color:#f5f8fa}
*{box-sizing:border-box}
body:has(.oe)>.site-header,body:has(.oe)>.site-footer,.page-template-custom-opportunity .site-header,.page-template-custom-opportunity .site-footer{display:none}
.skip-link{position:fixed;z-index:1000;top:12px;left:16px;min-height:44px;padding:10px 16px;border:1px solid #93e6ff;border-radius:8px;background:#061522;color:#fff;font:600 1rem/1.5 system-ui,sans-serif;text-decoration:none;transform:translateY(-180%)}
.skip-link:focus{transform:none}

.oe{
  --bg:#01050a;--panel:#06131e;--panel-2:#081d2b;--line:rgba(133,222,255,.24);
  --line-strong:rgba(139,226,255,.58);--ice:#93e6ff;--ice-soft:#c7f2ff;
  --text:#f5f8fa;--muted:#b2c6d1;--muted-2:#a7bcc8;--focus:#f5f8fa;--decision:#efc875;--career:#b9adff;
  position:relative;isolation:isolate;min-height:100svh;overflow-x:hidden;
  background:var(--bg);color:var(--text);font:400 1.125rem/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
.oe::before{
  content:"";position:absolute;z-index:-2;inset:64px 0 0;pointer-events:none;
  background:linear-gradient(105deg,rgba(1,5,10,.99) 0%,rgba(2,10,17,.97) 38%,rgba(2,10,17,.74) 72%,rgba(1,6,11,.88) 100%),url("../images/decision-field-v1.svg") 78% 48%/min(1120px,76vw) auto no-repeat,#01050a
}
.oe::after{content:"";position:absolute;z-index:-1;inset:64px 0 0;pointer-events:none;background:linear-gradient(180deg,transparent 40%,rgba(1,5,10,.9) 100%)}
.oe :focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.oe [data-opportunity-stage] h1[tabindex="-1"]:focus{outline:none}
.oe button,.oe input,.oe select,.oe summary{font:inherit}
.oe button{min-height:48px;color:inherit}
.oe p,.oe h1,.oe h2,.oe small,.oe button,.oe summary{overflow-wrap:break-word}
.oe small{font-size:1rem}
.oe-server-proof{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.oe-nav{position:relative;z-index:20;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;padding:10px clamp(16px,4vw,64px);border-bottom:1px solid rgba(147,230,255,.17);background:rgba(1,5,10,.86)}
.oe-nav a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
.oe-nav a:first-child{font:400 1.5rem/1.25 Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.oe-nav a:last-child{color:#c9d9e2;font-size:1rem;font-weight:600}
.oe-shell{position:relative;z-index:2;width:min(1080px,calc(100% - 48px));margin:auto;min-height:calc(100svh - 64px);padding:36px 0 48px}
.v2{position:relative;width:100%;color:var(--text)}
.v2-entry-copy>span,.v2-q>span,.v2-plan>header>span{color:var(--ice);font-size:1rem;font-weight:600;letter-spacing:.035em}
.v2 h1{margin:8px 0 16px;color:#fff;font:400 clamp(2rem,3.6vw,3rem)/1.13 Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.v2 button{border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,rgba(8,27,40,.96),rgba(3,13,21,.97));color:#fff;font-size:1.125rem;line-height:1.4;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}
.v2 button:hover{transform:translateY(-1px);border-color:var(--line-strong);background:#0a293b}
.v2 button:active{transform:none}
.v2 summary{min-height:44px;padding:10px 0;color:#d1e7f1;font-size:1rem;line-height:1.5;cursor:pointer;list-style-position:inside}
.v2 summary::marker{color:var(--ice)}

/* Choose an area. */
.v2.entry{padding:clamp(24px,6vh,58px) 0}
.v2-entry-copy{max-width:780px}
.v2-entry-copy h1{margin:12px 0 20px;font-size:clamp(2.5rem,5vw,4.2rem);line-height:1.04}
.v2-entry-copy p{max-width:660px;margin:0;color:#cbd8df;font-size:1.125rem}
.v2-domain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:32px}
.v2-domain-grid button{--domain:var(--ice);position:relative;min-height:170px;padding:22px;text-align:left;box-shadow:0 16px 42px rgba(0,0,0,.22)}
.v2-domain-grid button::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,var(--domain),transparent 72%)}
.v2-domain-grid button:nth-child(1){--domain:var(--decision)}
.v2-domain-grid button:nth-child(2){--domain:var(--ice)}
.v2-domain-grid button:nth-child(3){--domain:var(--career)}
.v2-domain-grid i{display:block;margin-bottom:14px;color:var(--domain);font-size:1rem;font-style:normal;font-weight:600}
.v2-domain-grid b{display:block;font:400 1.7rem/1.15 Georgia,"Times New Roman",serif}
.v2-domain-grid small{display:block;margin-top:10px;color:var(--muted);font-size:1rem;line-height:1.5}
.v2-recent{margin-top:36px;padding-top:20px;border-top:1px solid var(--line)}
.v2-recent-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.v2-recent-head>span{color:var(--ice);font-size:1.125rem;font-weight:600}
.v2-recent-head small{color:var(--muted)}
.v2-recent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.v2-recent-grid button{min-height:88px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:14px 16px;text-align:left}
.v2-recent-grid b{font-size:1.125rem}
.v2-recent-grid small{grid-column:1;color:var(--muted)}
.v2-recent-grid em{grid-column:2;grid-row:1/3;align-self:center;color:var(--ice);font-size:1rem;font-style:normal}

/* All decisions are visible within the chosen area. */
.v2-top-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.v2-back{padding:10px 14px;font-size:1rem}
.v2-title{max-width:780px}
.v2-title h1{margin-top:0}
.v2-title p{margin:0;color:var(--muted);font-size:1.125rem}
.v2-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
.domain-money .v2-module-grid{--domain:var(--decision)}
.domain-work .v2-module-grid{--domain:var(--ice)}
.domain-purpose .v2-module-grid{--domain:var(--career)}
.v2-module-grid button{min-height:92px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 20px;border-left:2px solid var(--domain,var(--ice));text-align:left}
.v2-module-grid b{display:block;font-size:1.25rem;font-weight:650}
.v2-module-grid small{display:block;margin-top:5px;color:var(--muted);font-size:1rem;line-height:1.45}
.v2-module-grid em{color:var(--domain,var(--ice));font-size:1.25rem;font-style:normal}

/* One question, a short purpose, and clear choices. */
.v2.question{max-width:900px;margin:auto}
.v2-q h1{max-width:820px;margin:10px 0 16px;font-size:clamp(1.9rem,3.4vw,2.7rem)}
.v2-q>p{max-width:760px;margin:0 0 18px;color:var(--muted);font-size:1.125rem;line-height:1.5}
.v2-q .v2-question-note{padding:14px 16px;border-left:2px solid var(--line-strong);background:rgba(147,230,255,.035);color:#cbdce5}
.v2-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}
.v2-options button{min-height:56px;padding:13px 16px;text-align:left;font-size:1.125rem}
.v2-option-pager{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;color:var(--muted);font-size:1rem}
.v2-option-pager button{padding:10px 16px;font-size:1rem}

/* A result is a short decision brief. */
.v2-result{width:min(1000px,100%);margin:auto}
.v2-result-copy{position:relative;padding:28px;border:1px solid rgba(120,224,255,.38);border-radius:16px;background:linear-gradient(145deg,rgba(8,30,45,.98),rgba(4,17,27,.99) 72%);box-shadow:0 20px 60px rgba(0,13,24,.35)}
.v2-result-copy::after{content:"";position:absolute;right:0;top:0;width:min(480px,80%);height:240px;background:url("../images/decision-field-v1.svg") center/cover no-repeat;opacity:.055;pointer-events:none}
.v2-result-copy>*{position:relative;z-index:1}
.v2-result-kicker{display:flex;justify-content:space-between;gap:8px 18px;flex-wrap:wrap;color:var(--muted);font-size:1rem;line-height:1.5}
.v2-result-kicker span:first-child{color:var(--ice);font-weight:600}
.v2-result-copy h1{margin:16px 0 22px;font-size:clamp(1.9rem,3.5vw,2.7rem)}
.v2-outcome-label{margin:0;color:var(--muted);font-size:1rem;line-height:1.5}
.v2-result-copy>strong{display:block;margin:5px 0 22px;color:#e2f7ff;font-size:clamp(2rem,4vw,3rem);font-weight:650;line-height:1.15;letter-spacing:-.025em;overflow-wrap:anywhere}
.v2-result-copy.textual-result>strong{font-size:clamp(1.625rem,3vw,2.25rem);line-height:1.22}
.v2-next-move{display:grid;grid-template-columns:10rem minmax(0,1fr);gap:20px;align-items:start;padding:16px 0;border-top:1px solid rgba(147,230,255,.16)}
.v2-next-move>span{color:var(--ice);font-size:1rem;font-weight:600;line-height:1.6}
.v2-next-move>p{margin:0;color:#eff6fa;font-size:1.125rem;font-weight:400;line-height:1.55}
.v2-next-step>span{color:var(--decision)}
.v2-next-step>p{font-weight:500}
.v2-primary-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:10px;padding-top:20px;border-top:1px solid rgba(239,200,117,.24)}
.v2-primary-action>p{max-width:540px;margin:0;color:#d1e0e8;font-size:1.125rem;line-height:1.5}
.v2-primary-action button{flex-shrink:0;min-height:52px;padding:13px 18px;border-color:rgba(239,200,117,.76);background:linear-gradient(180deg,rgba(91,67,25,.58),rgba(28,23,12,.96));font-size:1.125rem;font-weight:650}
.v2-primary-action button:hover{border-color:#f4d997;background:linear-gradient(180deg,rgba(111,80,27,.64),rgba(31,24,12,.98))}
.v2-evidence{margin-top:20px;padding-top:8px;border-top:1px solid rgba(147,230,255,.14);color:var(--muted);font-size:1rem;line-height:1.6}
.v2-evidence summary{font-weight:600}
.v2-evidence p{margin:10px 0}
.v2-evidence a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;color:var(--ice);text-decoration-thickness:1px;text-underline-offset:3px}
.v2-evidence ul{margin:12px 0;padding-left:22px}
.v2-evidence li+li{margin-top:9px}

/* One secondary invitation; contribution remains an explicit separate choice. */
.v2-community{margin-top:20px;padding:0 16px;border:1px solid rgba(147,230,255,.19);border-radius:10px;background:rgba(5,18,28,.52)}
.v2-community>summary{padding:14px 0;font-size:1.125rem;font-weight:500}
.v2-optional-badge{display:inline-block;margin-left:12px;padding:1px 8px;border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:1rem;font-weight:400;vertical-align:baseline}
.v2-community-body{padding:0 4px 18px}
.v2-community-body p{margin:12px 0;color:#cedee6;font-size:1.125rem;line-height:1.55}
.v2-community-body button{min-height:48px;margin:4px 8px 4px 0;padding:10px 16px;font-size:1rem}
.v2-community-body .v2-quiet{color:var(--muted);font-size:1rem}
.v2-community-body [data-contribution]{margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}
.v2-more-actions{margin-top:16px;padding-top:6px;border-top:1px solid rgba(147,230,255,.14);color:var(--muted);font-size:1rem}
.v2-more-actions>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 8px}
.v2-more-actions button{min-height:44px;padding:10px 14px;font-size:1rem}
.v2-top-actions .v2-more-actions{max-width:420px;margin:0;padding:0;border:0}
.v2-top-actions .v2-more-actions>summary{text-align:right}
.v2-feedback{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line);font-size:1rem}
.v2-feedback button{font-size:1rem}

/* Bring the plan to the next conversation. */
.v2.plan{max-width:1000px;margin:auto}
.v2-plan>header{max-width:820px;margin-bottom:24px}
.v2-plan>header h1{margin:10px 0 14px}
.v2-plan>header p{margin:0;color:var(--muted);font-size:1.125rem}
.v2-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.v2-plan-grid>section{padding:22px;border:1px solid var(--line);border-radius:12px;background:rgba(5,18,28,.9)}
.v2-plan-grid h2{margin:0 0 14px;color:var(--ice);font-size:1.25rem;line-height:1.4}
.v2-plan-grid ul,.v2-plan-grid ol{margin:0;padding-left:22px;color:#e7f0f4;font-size:1.125rem;line-height:1.6}
.v2-plan-grid li+li{margin-top:10px}
.v2-plan-wording,.v2-plan-stop{grid-column:1/-1}
.v2-plan-wording blockquote{margin:0 0 16px;padding:16px;border-left:2px solid var(--ice);background:rgba(147,230,255,.045);color:#f5fbfd;font:400 1.125rem/1.6 Georgia,"Times New Roman",serif}
.v2-plan-wording button{padding:10px 16px;font-size:1rem}

@media(max-width:900px){
  .oe-shell{width:calc(100% - 36px)}
  .v2-domain-grid button{padding:18px;min-height:168px}
  .v2-primary-action{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .oe::before{background:linear-gradient(180deg,rgba(1,5,10,.9),rgba(1,5,10,.99) 70%),url("../images/decision-field-v1.svg") 68% 16%/940px auto no-repeat,#01050a}
  .oe-nav{padding:8px 16px}
  .oe-shell{width:calc(100% - 28px);padding:24px 0 36px}
  .v2.entry{padding:20px 0}
  .v2-entry-copy h1{font-size:clamp(2.4rem,9.5vw,3rem)}
  .v2-domain-grid{grid-template-columns:1fr;gap:12px;margin-top:26px}
  .v2-domain-grid button{min-height:132px;padding:18px}
  .v2-domain-grid i{margin-bottom:8px}
  .v2-domain-grid b{font-size:1.6rem}
  .v2-domain-grid small{margin-top:7px}
  .v2-recent-head{align-items:flex-start;flex-direction:column;gap:4px}
  .v2-recent-grid{grid-template-columns:1fr}
  .v2-top-actions{gap:12px;margin-bottom:22px}
  .v2-title h1{font-size:2.4rem}
  .v2-module-grid{grid-template-columns:1fr;gap:10px;margin-top:22px}
  .v2-module-grid button{padding:16px;min-height:94px}
  .v2-options{grid-template-columns:1fr}
  .v2-options button{min-height:56px}
  .v2-option-pager{align-items:flex-start;flex-direction:column}
  .v2-option-pager button{width:100%}
  .v2-result-copy{padding:20px 18px;border-radius:12px}
  .v2-result-copy h1{font-size:2rem;margin:16px 0 20px}
  .v2-result-copy>strong{font-size:2.25rem}
  .v2-result-copy.textual-result>strong{font-size:1.75rem}
  .v2-next-move{grid-template-columns:1fr;gap:6px;padding:16px 0}
  .v2-primary-action{gap:16px}
  .v2-primary-action button{width:100%}
  .v2-community{padding:0 14px}
  .v2-community>summary{line-height:1.65}
  .v2-community-body button{max-width:100%;width:100%;margin-right:0}
  .v2-more-actions .v2-utility-buttons{display:grid;grid-template-columns:1fr 1fr}
  .v2-plan-grid{grid-template-columns:1fr}
  .v2-plan-grid>section{padding:18px}
  .v2-plan-wording,.v2-plan-stop{grid-column:auto}
}
@media(max-width:390px){
  .oe-shell{width:calc(100% - 24px)}
  .v2-more-actions .v2-utility-buttons{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .v2 button{transition:none}
  .oe{scroll-behavior:auto}
}
