/* MIOCENE 08 — stage-based roadmap layout */
.stage-guide{margin-top:8px;padding:18px 20px 20px}
.stage-guide .section-intro{max-width:920px;margin-bottom:18px}
.stage-guide-list{display:grid;gap:7px}
.stage-guide-row{position:relative;display:grid;grid-template-columns:92px minmax(190px,260px) minmax(260px,1fr) minmax(230px,1.05fr);align-items:center;gap:16px;padding:14px 52px 14px 14px;border:1px solid rgba(0,168,255,.22);background:linear-gradient(90deg,rgba(3,18,31,.8),rgba(1,8,16,.72));cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}
.stage-guide-row:after{content:'VIEW DETAILS  ›';position:absolute;right:15px;top:50%;transform:translateY(-50%);font-family:'Michroma',sans-serif;font-size:5.8px;letter-spacing:.08em;color:rgba(72,205,255,.55);writing-mode:vertical-rl}
.stage-guide-row:hover,.stage-guide-row:focus-visible{border-color:rgba(75,200,255,.65);background:linear-gradient(90deg,rgba(4,28,47,.92),rgba(1,10,19,.86));box-shadow:inset 0 0 34px rgba(0,162,255,.06),0 0 18px rgba(0,155,255,.06);outline:none}
.stage-guide-row:hover:after,.stage-guide-row:focus-visible:after{color:#65d8ff}
.stage-guide-number,.stage-guide-name{font-family:'Michroma',sans-serif}
.stage-guide-number{font-size:8px;letter-spacing:.12em;color:#38c6ff}
.stage-guide-name{font-size:10px;letter-spacing:.06em;color:#f1faff}
.stage-guide-description{font-size:13px;line-height:1.35;color:#8fa7b8}
.stage-meter{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;width:100%}
.stage-meter i{display:block;height:18px;border:1px solid rgba(0,168,255,.32);background:rgba(0,17,31,.66);box-shadow:inset 0 0 12px rgba(0,0,0,.3)}
.stage-meter i.on{background:linear-gradient(180deg,#52d2ff,#0a9fe2);border-color:#64d8ff;box-shadow:0 0 10px rgba(0,176,255,.22),inset 0 0 7px rgba(255,255,255,.16)}
.stage-guide-row[data-stage="5"] .stage-meter i.on{background:linear-gradient(180deg,#52d2ff,#4380ff)}
.stage-guide-row[data-stage="6"] .stage-meter i.on{background:linear-gradient(180deg,#91e5ff,#906dff)}
.stage-guide-row[data-stage="7"] .stage-meter i.on{background:linear-gradient(180deg,#d9fbff,#4ecbff)}

.system-roadmap{margin-top:8px}
.system-roadmap .frame-heading h2{letter-spacing:.19em}
.system-roadmap .section-intro{max-width:980px}
.system-card{padding-top:14px}
.system-card .system-stage-badge{position:absolute;z-index:4;right:10px;top:9px;width:116px;padding:7px 7px 6px;border:1px solid rgba(0,168,255,.42);background:rgba(0,8,17,.92);box-shadow:0 8px 22px rgba(0,0,0,.32)}
.system-stage-badge b,.system-stage-badge span{display:block;font-family:'Michroma',sans-serif}
.system-stage-badge b{font-size:6.5px;letter-spacing:.08em;color:#43c8ff}
.system-stage-badge span{margin-top:3px;font-size:5.6px;line-height:1.25;color:#d8f4ff;white-space:normal}
.system-stage-badge .stage-meter{margin-top:6px;gap:2px}
.system-stage-badge .stage-meter i{height:5px}
.system-card h3{padding-right:122px}
.system-card .system-image{margin-top:18px}
.system-card .expand-hint{margin-top:10px}

.focus-section{margin-top:8px;padding:15px 22px 22px}
.focus-section .development-panel{margin:0!important;min-height:0!important;border:0!important;clip-path:none!important;background:transparent!important;padding:0!important}
.focus-section .development-art{height:320px!important;margin:0 -22px 18px!important;background-position:center 48%!important}
.focus-section .focus-stage-line{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0 0 12px}
.focus-section .focus-stage-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(0,168,255,.36);background:rgba(2,16,28,.78);font-family:'Michroma',sans-serif;font-size:7px;letter-spacing:.06em;color:#aee8ff}
.focus-section .focus-stage-chip .mini-meter{width:90px}
.focus-section .focus-lead{max-width:none!important}
.focus-section .focus-progress{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
.focus-section .focus-progress>div{min-height:150px!important;padding:15px 14px 14px 52px!important}
.focus-section .focus-progress>div>strong{font-size:7.2px!important}
.focus-section .focus-progress>div>p{font-size:13px!important}
.focus-pipeline{margin-top:16px;padding:0;border:0;background:transparent;font-size:inherit;color:inherit}

/* premium visual pipelines */
.pipeline-shell{position:relative;margin-top:14px;padding:18px 18px 20px;border:1px solid rgba(0,177,255,.36);background:linear-gradient(180deg,rgba(3,19,32,.93),rgba(1,8,15,.92));box-shadow:inset 0 0 45px rgba(0,147,255,.035),0 12px 40px rgba(0,0,0,.16);overflow:hidden}
.pipeline-shell:before,.pipeline-shell:after{content:'';position:absolute;width:46px;height:1px;top:0;background:#27c4ff;box-shadow:0 0 10px rgba(39,196,255,.45)}
.pipeline-shell:before{left:0}.pipeline-shell:after{right:0}
.pipeline-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(0,168,255,.15)}
.pipeline-kicker{display:block;margin-bottom:4px;font-family:'Michroma',sans-serif;font-size:6.5px;letter-spacing:.15em;color:#31c5ff}
.pipeline-heading h3{margin:0;font-family:'Michroma',sans-serif;font-weight:400;font-size:13px;letter-spacing:.11em;color:#effaff}
.pipeline-heading p{max-width:630px;margin:0;font-size:13px;line-height:1.4;color:#7895a8;text-align:right}
.visual-pipeline{--flow-count:7;display:grid;grid-template-columns:repeat(var(--flow-count),minmax(0,1fr));gap:20px;align-items:stretch}
.flow-node{position:relative;min-width:0;padding:14px 10px 12px;text-align:center;border:1px solid rgba(0,171,255,.2);background:linear-gradient(180deg,rgba(2,22,37,.82),rgba(1,9,17,.75));transition:border-color .2s ease,transform .2s ease,background .2s ease}
.flow-node:hover{border-color:rgba(61,203,255,.55);background:linear-gradient(180deg,rgba(4,35,56,.9),rgba(1,12,22,.84));transform:translateY(-2px)}
.flow-node:not(:last-child):after{content:'›';position:absolute;z-index:3;right:-17px;top:37px;width:14px;height:14px;display:grid;place-items:center;border:1px solid rgba(0,184,255,.36);border-radius:50%;background:#03111d;color:#54d3ff;font-family:Arial,sans-serif;font-size:15px;line-height:1;box-shadow:0 0 14px rgba(0,174,255,.12)}
.flow-icon{position:relative;width:50px;height:50px;margin:0 auto 10px;display:grid;place-items:center;border:1px solid rgba(44,196,255,.5);clip-path:polygon(20% 0,80% 0,100% 20%,100% 80%,80% 100%,20% 100%,0 80%,0 20%);background:radial-gradient(circle at 50% 42%,rgba(0,178,255,.18),rgba(0,23,40,.84) 68%);box-shadow:inset 0 0 16px rgba(0,182,255,.08),0 0 14px rgba(0,147,255,.08)}
.flow-icon svg{width:28px;height:28px;stroke:#54d4ff;fill:none;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(0,184,255,.28))}
.flow-step{display:block;margin-bottom:4px;font-family:'Michroma',sans-serif;font-size:5.8px;letter-spacing:.12em;color:#2fc5ff}
.flow-node strong{display:block;min-height:27px;font-family:'Michroma',sans-serif;font-size:6.7px;line-height:1.45;letter-spacing:.04em;color:#edfaff}
.flow-node p{margin:7px 0 0;font-size:11.5px;line-height:1.35;color:#86a1b2}

/* System detail flow */
.system-gameplay-flow{margin:0 0 20px}
.system-gameplay-flow .pipeline-heading{align-items:center}
.system-gameplay-flow .pipeline-heading h3{font-size:11px}
.system-gameplay-flow .flow-node{padding-top:12px}
.system-gameplay-flow .flow-icon{width:46px;height:46px}
.system-gameplay-flow .flow-icon svg{width:25px;height:25px}

.community-section{margin-top:8px!important}
.community-section .community-grid{max-width:760px;margin:0 auto}
.faq-section{margin-top:8px!important;margin-bottom:8px!important}
.faq-section .faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}

.system-modal-window{width:min(1240px,calc(100vw - 28px))!important;max-height:92vh;overflow:auto}
.system-modal-head{position:relative;min-height:250px;border-bottom:1px solid rgba(0,168,255,.24);background:#010812;overflow:hidden}
.system-modal-art{position:absolute;inset:0;background-size:cover;background-position:center}
.system-modal-head:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,5,11,.96) 0%,rgba(0,5,11,.7) 45%,rgba(0,5,11,.15) 100%),linear-gradient(180deg,transparent 30%,rgba(0,5,11,.88) 100%)}
.system-modal-title{position:relative;z-index:2;padding:42px 44px 30px;width:min(760px,72%)}
.system-modal-title small,.system-modal-title h2,.system-modal-title .modal-stage-name{font-family:'Michroma',sans-serif}
.system-modal-title small{color:#3ec8ff;font-size:8px;letter-spacing:.15em}
.system-modal-title h2{margin:8px 0 12px;font-size:30px;letter-spacing:.06em;font-weight:400;color:#f4fbff}
.system-modal-stage{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.system-modal-title .modal-stage-name{font-size:8px;color:#a8e8ff}
.system-modal-stage .stage-meter{width:220px}
.system-modal-body{padding:24px 30px 32px}
.system-modal-role{padding:15px 17px;border-left:2px solid #00a8ff;background:rgba(2,16,27,.65);font-size:16px;line-height:1.55;color:#c7d8e2;margin-bottom:18px}
.system-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.system-detail-box{border:1px solid rgba(0,168,255,.23);background:rgba(1,10,19,.75);padding:15px 16px}
.system-detail-box h3{margin:0 0 10px;font-family:'Michroma',sans-serif;font-size:8px;letter-spacing:.1em;color:#4ecbff}
.system-detail-box ul{list-style:none;padding:0;margin:0}
.system-detail-box li{position:relative;padding:7px 0 7px 16px;border-bottom:1px solid rgba(0,168,255,.08);font-size:14px;line-height:1.4;color:#aebfca}
.system-detail-box li:last-child{border-bottom:0}
.system-detail-box li:before{content:'›';position:absolute;left:0;color:#29bdff}

/* stage detail modal */
.stage-modal-window{width:min(1180px,calc(100vw - 30px))!important;max-height:92vh;overflow:auto;border-color:rgba(40,198,255,.5)!important;background:linear-gradient(180deg,#020b14,#01060c 70%)!important;box-shadow:0 25px 90px rgba(0,0,0,.75),0 0 45px rgba(0,160,255,.08)}
.stage-modal-hero{position:relative;min-height:270px;padding:40px 46px 34px;overflow:hidden;border-bottom:1px solid rgba(0,168,255,.24);background:radial-gradient(circle at 78% 42%,rgba(0,178,255,.18),transparent 32%),linear-gradient(115deg,rgba(2,32,51,.98),rgba(1,7,14,.94) 58%,rgba(1,11,20,.98))}
.stage-modal-hero:before{content:'';position:absolute;right:7%;top:50%;width:260px;height:260px;transform:translateY(-50%);border:1px solid rgba(70,205,255,.18);border-radius:50%;box-shadow:0 0 0 24px rgba(0,164,255,.025),0 0 0 58px rgba(0,164,255,.018),inset 0 0 60px rgba(0,182,255,.035)}
.stage-modal-hero:after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(0,168,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,168,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000,transparent 78%);pointer-events:none}
.stage-modal-copy{position:relative;z-index:2;max-width:760px}
.stage-modal-kicker{font-family:'Michroma',sans-serif;font-size:8px;letter-spacing:.18em;color:#42ceff}
.stage-modal-copy h2{margin:8px 0 14px;font-family:'Michroma',sans-serif;font-size:34px;font-weight:400;letter-spacing:.08em;color:#f5fbff}
.stage-modal-copy p{max-width:710px;margin:15px 0 0;font-size:16px;line-height:1.55;color:#a9bdc9}
.stage-modal-meter{width:min(590px,100%)}
.stage-modal-meter .stage-meter i{height:22px}
.stage-modal-body{padding:26px 32px 34px}
.stage-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.stage-detail-panel{position:relative;min-height:190px;padding:19px 20px;border:1px solid rgba(0,168,255,.22);background:linear-gradient(145deg,rgba(2,18,30,.82),rgba(1,8,15,.78));overflow:hidden}
.stage-detail-panel:before{content:'';position:absolute;left:0;top:0;width:54px;height:2px;background:#34c9ff;box-shadow:0 0 10px rgba(52,201,255,.4)}
.stage-detail-panel small{display:block;margin-bottom:8px;font-family:'Michroma',sans-serif;font-size:6.2px;letter-spacing:.14em;color:#34c7ff}
.stage-detail-panel h3{margin:0 0 12px;font-family:'Michroma',sans-serif;font-size:10px;font-weight:400;letter-spacing:.07em;color:#f0faff}
.stage-detail-panel p{margin:0;font-size:14px;line-height:1.5;color:#9db2c0}
.stage-detail-panel ul{list-style:none;margin:0;padding:0}
.stage-detail-panel li{position:relative;padding:6px 0 6px 15px;border-bottom:1px solid rgba(0,168,255,.07);font-size:13px;line-height:1.42;color:#9fb4c1}
.stage-detail-panel li:last-child{border-bottom:0}
.stage-detail-panel li:before{content:'›';position:absolute;left:0;color:#3ecaff}
.stage-transition{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-top:14px;padding:16px 18px;border:1px solid rgba(0,168,255,.26);background:rgba(1,11,20,.82)}
.stage-transition-block small{display:block;font-family:'Michroma',sans-serif;font-size:5.8px;letter-spacing:.12em;color:#4bcfff}
.stage-transition-block strong{display:block;margin-top:6px;font-family:'Michroma',sans-serif;font-size:8px;letter-spacing:.08em;color:#eaf8ff}
.stage-transition-arrow{width:50px;height:1px;background:linear-gradient(90deg,rgba(54,202,255,.1),#36caff,rgba(54,202,255,.1));position:relative}
.stage-transition-arrow:after{content:'›';position:absolute;right:-4px;top:-10px;color:#54d4ff;font-size:18px}
.gallery-modal-window{max-height:92vh}

@media(max-width:1180px){
  .stage-guide-row{grid-template-columns:80px 220px 1fr}.stage-guide-description{grid-column:2/4}
  .focus-section .focus-progress{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .visual-pipeline{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:22px}.flow-node:nth-child(4):after{display:none}
}
@media(max-width:900px){
  .stage-guide-row{grid-template-columns:74px 1fr}.stage-guide-row .stage-meter{grid-column:1/3}.stage-guide-description{grid-column:1/3}
  .system-detail-grid,.stage-detail-grid{grid-template-columns:1fr}
  .faq-section .faq-grid{grid-template-columns:1fr!important}
  .pipeline-heading{align-items:flex-start;flex-direction:column;gap:6px}.pipeline-heading p{text-align:left}
  .stage-transition{grid-template-columns:1fr}.stage-transition-arrow{transform:rotate(90deg);margin:4px auto}
}
@media(max-width:760px){
  main{display:block!important}
  .stage-guide{padding:14px 12px 16px}
  .stage-guide-row{padding:10px 34px 10px 10px;gap:8px 12px}
  .stage-guide-row:after{right:8px;font-size:5px}
  .stage-guide-name{font-size:8px}.stage-guide-description{font-size:12px}
  .system-card h3{padding-right:102px}
  .system-card .system-stage-badge{width:98px;right:7px;top:7px}
  .system-stage-badge b{font-size:5.8px}.system-stage-badge span{font-size:5px}
  .focus-section{padding:15px 14px 18px}
  .focus-section .development-art{height:210px!important;margin:0 -14px 15px!important}
  .focus-section .focus-progress{grid-template-columns:1fr!important}
  .focus-section .focus-progress>div{min-height:0!important}
  .system-modal-title{padding:34px 22px 22px;width:100%}.system-modal-title h2{font-size:22px}.system-modal-stage .stage-meter{width:170px}
  .system-modal-body{padding:18px 16px 24px}
  .pipeline-shell{padding:15px 12px 16px}
  .visual-pipeline{display:flex;overflow-x:auto;gap:22px;padding:0 2px 8px;scroll-snap-type:x proximity}.flow-node{flex:0 0 165px;scroll-snap-align:start}.flow-node:nth-child(4):after{display:grid}
  .stage-modal-hero{min-height:240px;padding:34px 22px 28px}.stage-modal-copy h2{font-size:24px}.stage-modal-copy p{font-size:14px}.stage-modal-body{padding:18px 14px 24px}.stage-detail-panel{min-height:0}
}
