/* Portfolio-only refinements; preserve the fixed three/two/one-column grid. */
.earth-projects .project-record{border-color:#22637a;border-radius:14px;background:#031923}
.earth-projects .project-record[hidden]{display:none}
.earth-projects .research-hero-art img{object-position:right center}
.earth-projects .project-meta>span:first-child{color:#7ad4e7;font-size:9px;letter-spacing:.06em}
.earth-projects .record-body{padding:13px 10px 10px}
.earth-projects .project-record h3{font-size:19px;line-height:1.3;margin-bottom:10px}
.earth-projects .project-summary{line-height:1.6;margin-bottom:12px}
.earth-projects .research-keywords{gap:5px;margin-bottom:14px}
.earth-projects .research-keywords span{background:#062332;border-color:#245a70;color:#a9d6e4}
.earth-projects button.project-view{width:100%;font:inherit;font-size:13px;color:#c9e8ef;border-color:#5d9fb2;background:transparent;cursor:pointer;text-align:left}
.earth-projects button.project-view:hover{border-color:#48d8ed;background:#082c3a}
.earth-projects button.project-view:focus-visible,.research-dialog :focus-visible{outline:2px solid #65e8ff;outline-offset:4px}
html:has(body.earth-projects){scrollbar-gutter:stable}
html.project-dialog-open{overflow:hidden}
.research-dialog{width:min(760px,calc(100% - 40px));max-width:760px;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #22c9ed;border-radius:18px;background:#031722;color:#eaf3f7;overflow:hidden;box-shadow:0 0 0 1px #1eb5d51a,0 20px 70px #0009}
.research-dialog[open]{display:flex;flex-direction:column}
.research-dialog::backdrop{background:#000c16cc}
.research-dialog-close{position:absolute;top:14px;right:14px;z-index:3;display:grid;place-items:center;width:44px;height:44px;padding:10px;border:1px solid #42c9e4;border-radius:50%;background:#00131fe8;color:#e8f9ff;cursor:pointer;-webkit-tap-highlight-color:transparent}
.research-dialog-close svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.research-dialog-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#286073 #031722}
.research-dialog-visual{position:relative;margin:16px 16px 0;overflow:hidden;border:1px solid #16465b;border-radius:9px}
.research-dialog-visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.research-dialog-meta{position:absolute;bottom:12px;left:12px;right:12px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.research-dialog-meta span{border:1px solid #38768a;border-radius:9px;background:#001925ed;color:#b4e8f2;font-size:10px;line-height:1.4;padding:6px 9px}
.research-dialog-meta .project-status{position:static;font-size:10px;background:#002431ed}
.research-dialog-main{padding:20px 28px 26px}
.research-dialog h2{font-size:26px;line-height:1.28;letter-spacing:-.035em;font-weight:550;margin:0 0 16px;color:#eff8fa}
.research-dialog p{font-size:14px;line-height:1.65;color:#b4ceda;margin:0 0 14px}
.research-dialog .research-detail-section{border-top:1px solid #2a5d70;padding-top:17px;margin-top:18px}
.research-dialog h3,.research-dialog .project-objectives strong{display:block;font-size:14px;line-height:1.4;font-weight:550;letter-spacing:0;color:#57d9ec;margin:0 0 10px}
.research-dialog .project-objectives p{font-size:14px;line-height:1.65;color:#b4ceda}
.research-dialog .project-objectives br{display:none}
.research-dialog .project-foot{display:flex;flex-direction:column;gap:5px;font-size:13px;line-height:1.6;color:#b4ceda}
.research-dialog .research-keywords{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.research-dialog .research-keywords span{font-size:11px;line-height:1.4;padding:5px 8px;border:1px solid #245c73;border-radius:7px;background:#052332;color:#add7e5}
.research-dialog .research-detail-note{border-top:1px solid #234b5e;margin:18px 0 0;padding-top:14px;font-size:12px;color:#a5c2d0}
.research-dialog .research-detail-link{margin:18px 0 0}
.research-dialog a{color:#79dfef;text-underline-offset:4px}
@media(max-width:560px){
 .earth-projects .project-record h3{font-size:20px}
 .earth-projects button.project-view{font-size:14px;min-height:46px}
 .research-dialog{width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none}
 .research-dialog-close{top:calc(12px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right))}
 .research-dialog-scroll{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
 .research-dialog-visual{margin:0;border:0;border-radius:0}
 .research-dialog-main{padding:20px max(20px,env(safe-area-inset-right)) 24px max(20px,env(safe-area-inset-left))}
 .research-dialog h2{font-size:23px;line-height:1.3}
 .research-dialog-meta{bottom:10px;left:14px;right:62px}
}
@media(prefers-reduced-motion:reduce){.research-dialog-scroll{scroll-behavior:auto}}
