/* Celestial Mechanics R1.3 — first-contact / frame / Transit Atlas presentation closeout.
   Presentation only. Protected astronomy and renderer engines are untouched. */

.cm-r13-first-contact{position:relative;overflow:hidden;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr)!important;gap:clamp(16px,2vw,26px)!important;padding:clamp(14px,1.7vw,20px)!important}
.cm-r13-first-contact:after{content:"";position:absolute;inset:auto -10% -65% 36%;height:220%;pointer-events:none;background:radial-gradient(ellipse,rgba(99,174,195,.07),transparent 60%)}
.cm-r13-first-contact-copy,.cm-r13-first-contact-action{position:relative;z-index:1}
.cm-r13-first-contact-copy h2{max-width:24ch;font-size:clamp(2rem,2.85vw,3.3rem)!important;line-height:.96!important;margin:.28rem 0 .52rem!important}
.cm-r13-first-contact-action{display:grid;grid-template-columns:1fr;gap:8px;align-items:stretch}
.cm-r13-play-primary{min-height:88px;border:1px solid rgba(227,193,113,.68);background:radial-gradient(circle at 50% 0,rgba(226,190,107,.16),transparent 68%),linear-gradient(180deg,rgba(39,31,16,.94),rgba(8,10,11,.96));color:#f1e5c8;padding:22px 20px;cursor:pointer;text-align:left;box-shadow:inset 0 0 0 1px rgba(255,237,190,.05),0 18px 55px rgba(0,0,0,.26);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.cm-r13-play-primary:hover{transform:translateY(-1px);border-color:#f0cf82;box-shadow:inset 0 0 0 1px rgba(255,237,190,.08),0 20px 60px rgba(0,0,0,.34),0 0 28px rgba(213,174,91,.08)}
.cm-r13-play-primary:focus-visible{outline:2px solid rgba(237,206,132,.96);outline-offset:4px}
.cm-r13-play-primary span{display:block;font:500 clamp(1rem,1.45vw,1.3rem)/1.15 Georgia,serif;letter-spacing:.09em}
.cm-r13-play-primary small{display:block;margin-top:9px;color:#978b70;font:600 .56rem/1.45 ui-monospace,Consolas,monospace;letter-spacing:.13em;text-transform:uppercase}
.cm-r13-play-primary[data-playing="true"]{border-color:rgba(114,187,205,.62);background:linear-gradient(180deg,rgba(12,34,40,.86),rgba(6,10,12,.96));color:#e1f5f7}
.cm-r13-first-contact .cm-play-live-r5{min-height:58px;padding:.7rem .85rem;border-left:1px solid rgba(202,167,91,.55)}
.cm-r13-first-contact .cm-play-live-r5 strong{font-size:clamp(.92rem,1.15vw,1.15rem);margin:.26rem 0 .18rem;line-height:1.05}
.cm-r13-first-contact .cm-play-live-r5 small{font-size:.68rem;line-height:1.35}
.cm-r13-first-contact .cm-challenge-boundary-r5{font-size:.71rem;line-height:1.45}
.cm-r13-first-contact + .cm-status>div{padding:.56rem .85rem}
.cm-r13-first-contact + .cm-status{margin-bottom:.7rem}

/* First-contact compression: keep the operative sky-path viewport visibly in the opening fold. */
.cm-live-hero-r4{margin-bottom:.75rem!important;padding:.55rem .2rem .85rem!important}
.cm-live-hero-r4 h1{font-size:clamp(3rem,5vw,5.8rem)!important}
.cm-live-hero-r4 .lead{margin-top:.5rem!important;line-height:1.45!important}
.cm-r13-first-contact-copy h2{max-width:31ch;font-size:clamp(1.9rem,2.5vw,3rem)!important}
.cm-r13-first-contact-copy p{line-height:1.45!important;margin:.3rem 0!important}
.cm-r13-first-contact + .cm-status>div{padding:.42rem .78rem}
.cm-r13-first-contact-grid .cm-instrument{padding:.72rem!important}
.cm-r13-first-contact-grid .cm-instrument-head{margin-bottom:.42rem!important}
.cm-r13-first-contact-grid .cm-instrument h2{font-size:clamp(2rem,3vw,3.25rem);margin:.15rem 0}
.cm-r13-frame-feedback{padding:8px 10px;margin-bottom:8px}
.cm-r13-frame-feedback strong{font-size:clamp(1rem,1.55vw,1.3rem)}
.cm-r13-preplay #cmDirection{font-size:0;color:#d8c18b}
.cm-r13-preplay #cmDirection:after{content:"WATCH THE PATH";font:700 .72rem/1 ui-monospace,Consolas,monospace;letter-spacing:.08em;color:#d8c18b}


.cm-r13-first-contact-grid{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
.cm-r13-first-contact-grid .cm-instrument{grid-column:1/-1;min-width:0}
.cm-r13-first-contact-grid .cm-predict{grid-column:1/-1}
.cm-r13-first-contact-grid .cm-model{grid-column:1/-1}
.cm-r13-frame-feedback{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 12px;padding:12px 14px;border:1px solid rgba(135,167,179,.16);border-left:2px solid rgba(120,173,193,.68);background:linear-gradient(90deg,rgba(24,49,58,.18),rgba(4,8,10,.25))}
.cm-r13-frame-feedback>div{min-width:0}
.cm-r13-frame-feedback span{display:block;color:#92a7ad;font:700 .56rem/1.3 ui-monospace,Consolas,monospace;letter-spacing:.17em;text-transform:uppercase}
.cm-r13-frame-feedback strong{display:block;margin-top:4px;color:#eef0e9;font:400 clamp(1.1rem,1.8vw,1.55rem)/1.12 Georgia,serif;letter-spacing:.01em}
.cm-r13-frame-feedback em{flex:0 0 auto;opacity:.34;color:#e0c57d;font:700 .56rem/1.3 ui-monospace,Consolas,monospace;letter-spacing:.15em;font-style:normal;transition:opacity .18s ease,text-shadow .18s ease}
.cm-r13-frame-feedback em.is-visible{opacity:1;text-shadow:0 0 15px rgba(216,182,100,.27)}

.cm-r13-first-contact-grid .cm-dial button{border:1px solid transparent;border-radius:999px;padding:8px 5px;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}
.cm-r13-first-contact-grid .cm-dial button[aria-pressed="true"]{border-color:rgba(232,204,139,.74);background:linear-gradient(180deg,rgba(75,61,32,.56),rgba(10,15,17,.88));box-shadow:inset 0 0 0 1px rgba(255,235,184,.08),0 0 22px rgba(217,179,89,.13);color:#f5e6bd}
.cm-r13-first-contact-grid .cm-dial button[aria-pressed="true"] span{color:#f6d88e!important;text-shadow:0 0 20px rgba(240,206,126,.55)}
.cm-r13-first-contact-grid .cm-dial button[aria-pressed="true"] small{color:#d9caa6}
.cm-r13-first-contact-grid .cm-dial button:focus-visible{outline:2px solid rgba(133,194,211,.96);outline-offset:4px}
.cm-r13-first-contact-grid .cm-plot-wrap{isolation:isolate}
.cm-r13-frame-ghost{position:absolute;inset:0;z-index:7;width:100%;height:100%;pointer-events:none;opacity:1;filter:none;transition:opacity .58s cubic-bezier(.2,.65,.2,1),filter .58s ease,transform .58s ease;transform:scale(1)}
.cm-r13-frame-ghost.is-fading{opacity:0;filter:blur(2px);transform:scale(1.012)}
.cm-r13-first-contact-grid .cm-plot-wrap.is-reframing:after{content:"VIEWPOINT CHANGED";position:absolute;z-index:8;right:14px;bottom:12px;color:rgba(225,215,185,.75);font:700 .52rem/1 ui-monospace,Consolas,monospace;letter-spacing:.16em;background:rgba(2,6,8,.66);border:1px solid rgba(207,186,128,.22);padding:7px 9px;pointer-events:none}

.cm-r13-prediction{position:relative;max-width:none;padding:clamp(18px,2.5vw,30px)!important;border-color:rgba(214,181,106,.32)!important;background:linear-gradient(120deg,rgba(58,45,21,.12),rgba(5,10,13,.95) 45%,rgba(52,108,121,.05))!important}
.cm-r13-prediction[hidden]{display:none!important}
.cm-r13-prediction.is-revealed{animation:cmR13Reveal .48s ease both}
.cm-r13-prediction h2{margin:.32rem 0 .45rem;font-size:clamp(2rem,3.2vw,3.5rem)}
.cm-r13-prediction>p{max-width:72ch}
.cm-r13-prediction .cm-answer-set{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.cm-r13-prediction .cm-answer-set button{text-align:center;min-height:70px}
.cm-r13-prediction .cm-check{max-width:360px}
.cm-r13-reveal-next{color:#c7b27e!important;border-left:1px solid rgba(214,181,106,.38);padding-left:12px}
@keyframes cmR13Reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.cm-r13-method{padding:0!important;opacity:1!important;overflow:hidden}
.cm-r13-method>summary{list-style:none;display:flex;align-items:center;gap:18px;cursor:pointer;padding:16px 18px;background:linear-gradient(90deg,rgba(7,14,17,.96),rgba(5,8,10,.96));border-bottom:1px solid transparent}
.cm-r13-method>summary::-webkit-details-marker{display:none}
.cm-r13-method>summary:focus-visible{outline:2px solid rgba(126,183,200,.95);outline-offset:-3px}
.cm-r13-method>summary .micro{flex:0 0 auto}
.cm-r13-method>summary strong{font:400 clamp(1.05rem,1.8vw,1.45rem)/1.2 Georgia,serif;color:#dedbd0}
.cm-r13-method-action{margin-left:auto;color:#7f9297;font:700 .55rem/1 ui-monospace,Consolas,monospace;letter-spacing:.13em}
.cm-r13-method[open]>summary{border-bottom-color:rgba(205,183,131,.18)}
.cm-r13-method[open] .cm-r13-method-action{font-size:0}
.cm-r13-method[open] .cm-r13-method-action:after{content:"CLOSE ↑";font-size:.55rem}
.cm-r13-method-body{padding:4px 18px 18px}
.cm-r13-method-body dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:10px 0 16px}
.cm-r13-method-body dl div{padding:12px;border-top:1px solid rgba(205,183,131,.15);border-right:1px solid rgba(205,183,131,.10)}
.cm-r13-method-body dl div:last-child{border-right:0}
.cm-r13-method .cm-equation-toggle{max-width:360px}

.cm-r13-transit{position:relative}
.cm-r13-transit-deck{color:#d6c28e!important;font:700 .58rem/1.4 ui-monospace,Consolas,monospace!important;letter-spacing:.18em!important}
.cm-r13-transit-law{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 14px;padding:10px 12px;border:1px solid rgba(198,162,93,.24);background:rgba(5,8,9,.78);font:700 .56rem/1.4 ui-monospace,Consolas,monospace;letter-spacing:.12em;color:#9aa7a9}
.cm-r13-transit-law b:first-child{color:#c9d6d8}.cm-r13-transit-law b:last-child{color:#c8a867}.cm-r13-transit-law i{font-style:normal;color:#dfe5e3}
.cm-r13-transit-core{min-height:520px;border:1px solid rgba(198,162,93,.31);background:#030506;box-shadow:0 34px 100px rgba(0,0,0,.34);overflow:visible}
.cm-r13-transit-loading{min-height:520px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:#829295}
.cm-r13-transit-loading strong{font:400 clamp(1.25rem,2.2vw,2rem)/1.1 Georgia,serif;color:#dedbd0}
.cm-r13-transit-core .transit-instrument{margin-top:0;border:0;box-shadow:none}
.cm-r13-transit-core .instrument-head{padding-top:22px}
.cm-r13-transit-core .transit-equation{margin:0;border-width:1px 0 0;background:linear-gradient(145deg,#0a0b09,#050708);box-shadow:none}
.cm-r13-transit-core .transit-equation span,.cm-r13-transit-core .transit-equation small{font-size:.5rem}
.cm-r13-transit-core .transit-equation strong{font-size:clamp(.86rem,1.35vw,1.05rem);margin:10px 0}
.cm-r13-transit-core[data-ready="true"]{min-height:0}
.cm-r13-transit-core[data-error="true"]{min-height:220px}
.cm-r13-transit-core .register-scroll{overflow:visible}
.cm-r13-transit-core .register-axis{max-width:100%}
.cm-r13-transit-core .control:focus-visible,.cm-r13-transit-core select:focus-visible,.cm-r13-transit-core .body-node button:focus-visible{outline:2px solid rgba(141,216,223,.88);outline-offset:3px}

@media(max-width:1000px){
 .cm-r13-first-contact{grid-template-columns:1fr!important}
 .cm-r13-first-contact-action{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr)}
 .cm-r13-play-primary{min-height:92px}
 .cm-r13-prediction .cm-answer-set{grid-template-columns:1fr 1fr}
 .cm-r13-method-body dl{grid-template-columns:1fr 1fr}
 .cm-r13-method-body dl div{border-right:0}
}
@media(max-width:720px){
 .cm-r13-first-contact-action{grid-template-columns:1fr}
 .cm-r13-first-contact-copy h2{max-width:none}
 .cm-r13-frame-feedback{align-items:flex-start;flex-direction:column;gap:8px}
 .cm-r13-frame-feedback em{align-self:flex-start}
 .cm-r13-prediction .cm-answer-set{grid-template-columns:1fr}
 .cm-r13-method>summary{align-items:flex-start;flex-wrap:wrap}.cm-r13-method-action{margin-left:0;width:100%}
 .cm-r13-method-body dl{display:block}
 .cm-r13-transit-core .register-scroll{overflow:visible!important;padding-bottom:0!important}
 .cm-r13-transit-core .register-axis{width:100%!important;height:350px!important;min-width:0!important}
 .cm-r13-transit-core .body-node button{display:none!important}
 .cm-r13-transit-core .body-node.selected-a button,.cm-r13-transit-core .body-node.selected-b button{display:block!important;width:126px!important;min-height:58px!important;padding:8px!important;font-size:.66rem!important}
 .cm-r13-transit-core .body-node.selected-a button{top:-104px!important}
 .cm-r13-transit-core .body-node.selected-b button{top:42px!important}
 .cm-r13-transit-core .body-node.selected-a.selected-b button{top:-104px!important}
 .cm-r13-transit-core .body-node button:before{height:84px!important}
 .cm-r13-transit-core .moon-proxy{display:none!important}
 .cm-r13-transit-core .axis-label{font-size:.44rem!important;letter-spacing:.08em!important;max-width:42%}
 .cm-r13-transit-core .axis-label.right{text-align:right}
 .cm-r13-transit-core .transit-equation{padding:18px 16px}
}
@media(max-width:480px){
 .cm-r13-play-primary{padding:18px 16px}
 .cm-r13-first-contact{padding:15px!important}
 .cm-r13-frame-feedback strong{font-size:1.08rem}
 .cm-r13-first-contact-grid .cm-dial{width:188px!important}
 .cm-r13-first-contact-grid .cm-plot-wrap{height:360px!important;min-height:360px!important}
 .cm-r13-transit-law{align-items:flex-start;flex-direction:column;gap:4px}
 .cm-r13-transit-law i{display:none}
 .cm-r13-transit-core .register-frame{padding:14px 8px!important}
 .cm-r13-transit-core .route-console{padding:14px 12px!important}
 .cm-r13-transit-core .instrument-head{padding:18px 14px!important}
 .cm-r13-transit-core .route-analysis{display:grid!important}
 .cm-r13-transit-core .orrery-panel{padding:16px 12px!important}
}
@media(prefers-reduced-motion:reduce){
 .cm-r13-play-primary,.cm-r13-frame-feedback em,.cm-r13-frame-ghost{transition:none!important}
 .cm-r13-frame-ghost{display:none!important}
 .cm-r13-prediction.is-revealed{animation:none!important}
 .cm-r13-first-contact-grid .cm-plot-wrap.is-reframing:after{content:"VIEWPOINT CHANGED · MOTION REDUCED"}
}
