/* PROJECT NEXUS / owner brief 2026-10-17. Gold is product-specific. */
#nxMobile,#nxMobileSettings,#nxMobileText,.nm-chat-head,#nmHistoryLog{display:none}
@media(max-width:767px){
 body.nx-mobile{--nm-bg:#06090f;--nm-panel:#10151e;--nm-gold:#e4bd77;--nm-text:#f6f3ed;--nm-muted:#a9abb2;background:var(--nm-bg);color:var(--nm-text)}
 body.nx-mobile #nxMobile{display:flex;position:fixed;inset:0;z-index:10;flex-direction:column;height:100svh;height:100dvh;padding:env(safe-area-inset-top) 24px env(safe-area-inset-bottom);background:radial-gradient(ellipse at 50% 42%,#131722 0%,#06090f 64%);font-family:var(--jp),sans-serif}
 body.nx-mobile:not(.nm-ready) #nxMobile{visibility:hidden}
 body.nx-mobile .bgfx,body.nx-mobile #coreveil,body.nx-mobile #spectrum,body.nx-mobile #radar,body.nx-mobile #uni,body.nx-mobile #unihud,body.nx-mobile #ops,body.nx-mobile .hud,body.nx-mobile #bootburst{display:none!important}
 body.nx-mobile #app>.topbar,body.nx-mobile #app>.dock,body.nx-mobile .reactor-wrap,body.nx-mobile #nxHome,body.nx-mobile .home-summary{display:none!important}
 body.nx-mobile #chat,body.nx-mobile #interim{display:none}
 body.nx-mobile #app.on{z-index:auto;opacity:1;transition:none}
 .nm-head{display:flex;align-items:center;justify-content:space-between;min-height:76px;flex-shrink:0}
 .nm-wordmark,.nm-head-actions{display:flex;align-items:center;gap:10px}
 .nm-head-actions{gap:0}
 .nm-brand{font-size:16px;font-weight:500;letter-spacing:.23em;color:var(--nm-text)}
 .nm-connection{display:block;width:5px;height:5px;overflow:hidden;border-radius:50%;background:var(--nm-gold);font-size:0}
 .nm-connection[data-offline=true]{background:#b0a9a0}
 .nm-icon{display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;color:var(--nm-muted);border-radius:50%;cursor:pointer}
 #nxMobile svg,#nxMobileSettings svg,#nxMobileText svg,.nm-chat-head svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
 .nm-stage{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding-bottom:20px}
 .nm-orb-wrap{width:min(68vw,280px,38svh);aspect-ratio:1;position:relative}
 .nm-orb-wrap::before{content:'';position:absolute;inset:17%;border-radius:50%;box-shadow:0 0 85px 10px #a9702618;pointer-events:none}
 #nmOrb{display:block;width:100%;height:100%;position:relative}
 body.nx-mobile #nmOrb #core{display:block!important;position:absolute;inset:0;width:100%;height:100%;opacity:1;transition:none}
 .nm-state{font-size:10px;letter-spacing:.26em;font-weight:500;color:var(--nm-gold);margin-top:12px}
 .nm-hint{font-size:25px;font-weight:400;line-height:1.6;max-width:290px;margin:18px 0 0;color:#eeeae3;text-align:center;text-wrap:balance}
 .nm-transcript{font-size:17px;line-height:1.6;max-height:100px;overflow:auto;text-align:center;color:var(--nm-text);margin-top:14px;white-space:pre-wrap;overflow-wrap:anywhere}
 .nm-transcript:empty{display:none}
 .nm-error{background:#251b14;color:#f8d6aa;border:1px solid #8b6743;border-radius:16px;padding:14px 16px;font-size:14px;line-height:1.6;max-height:150px;overflow:auto}
 .nm-error[hidden]{display:none}
 .nm-input-area{flex-shrink:0;padding:12px 0 24px}
 .nm-controls{display:flex;align-items:center;padding:5px;min-height:64px;border:1px solid #655136;border-radius:34px;background:linear-gradient(120deg,#1e2027,#252018);box-shadow:0 12px 55px #ae77201a}
 #nmText{flex:1;min-width:0;height:52px;padding:0 18px;text-align:left;border:0;background:transparent;color:#bab8b4;font:inherit;font-size:16px;cursor:pointer;border-radius:27px}
 #nmMic{flex-shrink:0;border:0;padding:0;background:none;border-radius:50%;cursor:pointer}
 .nm-mic .nm-icon{width:52px;height:52px;background:#e4bd77;color:#18130c}
 .nm-mic .nm-icon svg{width:24px;height:24px}
 .nm-input-help{margin:14px 0 0;font-size:12px;line-height:1.5;color:#9d9fa7;text-align:center}
 #nxMobile button:active{transform:scale(.97)}
 #nxMobile button:focus-visible,body.nx-mobile dialog button:focus-visible{outline:2px solid #e4bd77;outline-offset:4px}
 body.nx-mobile .nm-sheet{position:fixed;inset:auto 0 0;max-width:none;width:100%;max-height:90svh;margin:0;padding:24px 24px calc(24px + env(safe-area-inset-bottom));border:1px solid #343842;border-bottom:0;border-radius:24px 24px 0 0;background:var(--nm-panel);color:var(--nm-text);font-family:var(--jp),sans-serif;overflow:auto;box-sizing:border-box}
 body.nx-mobile .nm-sheet[open]{display:block!important}
 .nm-sheet::backdrop{background:#0009;backdrop-filter:blur(6px)}
 .nm-sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
 .nm-sheet h2{font-size:21px;font-weight:500;margin:0}
 .nm-sheet p{font-size:14px;line-height:1.8;color:#b9bbc2}
 .nm-sheet button.nm-row{display:flex;justify-content:space-between;align-items:center;gap:18px;text-align:left;width:100%;min-height:60px;border:0;border-bottom:1px solid #2c313c;background:none;color:var(--nm-text);font:inherit;font-size:16px;padding:12px 0}
 .nm-sheet .nm-note{font-size:13px;color:#b9bbc2;line-height:1.7}
 .nm-sheet textarea{width:100%;min-height:120px;font:inherit;font-size:17px;line-height:1.7;border:1px solid #50535a;border-radius:12px;background:#080c13;color:#fff;padding:14px;box-sizing:border-box;resize:vertical}
 .nm-submit{display:block;width:100%;min-height:52px;margin-top:16px;border:0;border-radius:12px;background:var(--nm-gold);color:#18130c;font:inherit;font-size:16px;font-weight:600}
 body.nx-mobile #chat.nm-chat-open{display:block!important;position:fixed;z-index:15;inset:auto 12px calc(134px + env(safe-area-inset-bottom));height:42svh;max-height:42svh;min-height:0;padding:58px 18px 20px;border:1px solid #343842;border-radius:20px;background:#10151ef5;overflow:auto;box-sizing:border-box;color:var(--nm-text);scrollbar-width:thin}
 body.nx-mobile[data-nm-panel=history] #chat.nm-chat-open{height:calc(100svh - 221px);max-height:calc(100svh - 221px)}
 body.nx-mobile #chat .nm-old{display:none!important}
 body.nx-mobile[data-nm-panel=history] #chat .nm-old{display:block!important}
 #nmHistoryLog{display:none}
 body.nx-mobile[data-nm-panel=history] #chat>:not(#nmHistoryLog){display:none!important}
 body.nx-mobile[data-nm-panel=history] #chat>#nmHistoryLog{display:block!important}
 .nm-chat-head{display:none;position:fixed;z-index:16;left:13px;right:13px;bottom:calc(42svh + 79px + env(safe-area-inset-bottom));height:54px;align-items:center;justify-content:space-between;padding:0 12px 0 18px;border-radius:19px 19px 0 0;background:#10151e;color:#f6f3ed;font-size:14px}
 body.nx-mobile[data-nm-panel=answer] .nm-chat-head,body.nx-mobile[data-nm-panel=history] .nm-chat-head{display:flex}
 body.nx-mobile[data-nm-panel=history] .nm-chat-head{bottom:auto;top:87px}
 body.nx-mobile[data-nm-panel=answer] .nm-orb-wrap{width:180px;position:absolute;top:-20px}
 body.nx-mobile[data-nm-panel=answer] .nm-state{position:absolute;top:165px}
 body.nx-mobile[data-nm-panel=answer] .nm-hint{visibility:hidden}
 body.nx-mobile #chat .msg .body,body.nx-mobile #chat .cbody{font-size:16px;line-height:1.8;color:#f0ede7}
 body.nx-mobile #chat .who{color:#d6b77e}
 body.nx-mobile #chat .card{max-width:100%;background:#151c28;border-color:#3b414d;overflow-wrap:anywhere}
 body.nx-mobile #chat button{min-height:44px}
 body.nx-mobile #chat .ctitle{font-size:17px;color:#e4bd77}
 .nm-evidence{font-size:12px;line-height:1.7;color:#b9bbc2;margin-top:12px;border-top:1px solid #3b414d;padding-top:10px}
 body.nx-mobile #boot{background:#06090f}
 body.nx-mobile #bootlog{display:none}
 body.nx-mobile #boot .boot-tap{color:#e4bd77;border-color:#8c7046;background:#211b12}

 /* Mobile briefing: one central stage, with a separate control row. */
 .nm-work{flex:none;display:flex;flex-direction:column;gap:4px;padding:0 0 12px;font-size:14px;line-height:1.5}
 .nm-work[hidden]{display:none}
 #nmWorkPhase{color:#7dd3fc;font-size:12px;letter-spacing:.08em}
 #nmWorkDetail{color:var(--nm-text);max-height:3em;overflow:auto;overflow-wrap:anywhere}
 body.nx-mobile #nxStage{--nx-st-w:100%;box-sizing:border-box;padding:12px 16px;gap:12px;isolation:isolate;overflow:hidden}
 body.nx-mobile #nxStage.on{display:grid;grid-template-rows:auto 4px minmax(0,1fr) auto;align-items:stretch;justify-content:stretch}
 body.nx-mobile #nxStage .nx-st-bg{background:#070d17f5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
 body.nx-mobile #nxStage .nx-st-bar{align-items:center;min-height:24px;gap:10px}
 body.nx-mobile #nxStage .nx-st-where{font-size:13px}
 body.nx-mobile #nxStage .nx-st-view{width:100%;height:100%;min-height:0;overflow:hidden;align-items:stretch;grid-template-rows:minmax(0,1fr)}
 body.nx-mobile #nxStage .nx-st-scene{box-sizing:border-box;width:100%;height:100%;min-height:0;max-height:none;padding:26px 22px;border-radius:22px;overflow:auto;overscroll-behavior:contain;overflow-wrap:anywhere;scroll-padding:24px;background:linear-gradient(145deg,#163047,#0c1728 48%,#0a111d)}
 body.nx-mobile #nxStage .nx-st-title{display:flex;flex-direction:column;justify-content:safe center}
 body.nx-mobile #nxStage .nx-st-item{display:flex;flex-direction:column;justify-content:safe center}
 body.nx-mobile #nxStage .nx-st-scene>*{flex-shrink:0}
 body.nx-mobile #nxStage .nx-st-h,body.nx-mobile #nxStage .nx-st-label{font-size:clamp(27px,7.4vw,34px);line-height:1.4;max-width:none;text-shadow:none}
 body.nx-mobile #nxStage .nx-st-h2{font-size:26px;line-height:1.4}
 body.nx-mobile #nxStage .nx-st-note,body.nx-mobile #nxStage .nx-st-sub{font-size:17px;line-height:1.75;max-width:none}
 body.nx-mobile #nxStage .nx-st-kick{font-size:12px;letter-spacing:.12em}
 body.nx-mobile #nxStage .nx-st-lanes,body.nx-mobile #nxStage .nx-st-lanes.one{grid-template-columns:minmax(0,1fr);margin-top:24px;gap:12px}
 body.nx-mobile #nxStage .nx-st-lane-t{font-size:17px;line-height:1.6}
 body.nx-mobile #nxStage .nx-st-due{font-size:14px}
 body.nx-mobile #nxStage .nx-st-ctl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;position:relative}
 body.nx-mobile #nxStage .nx-st-ctl .nx-btn{min-width:0;min-height:48px;height:auto;font-size:13px;padding:8px 2px;border-radius:14px;white-space:nowrap}
 body.nx-mobile #nxStage .nx-st-go{max-width:100%;width:100%;gap:10px}
 body.nx-mobile #nxStage .nx-st-go .nx-btn{min-height:48px;font-size:16px}
 body.nx-mobile #nxStage .nx-st-fine{font-size:14px;line-height:1.7}
 body.nx-mobile #nxStage .nx-st-ghost{opacity:.22;font-size:130px}
 body.nx-mobile #nxStage .nx-st-fx{display:none}
 body.nx-mobile #nxStage .nx-st-scene.in{animation:nmCardIn 420ms cubic-bezier(.16,1,.3,1) both}
 body.nx-mobile #nxStage .nx-st-scene.in.rev{animation-name:nmCardBack}
 body.nx-mobile #nxStage .nx-st-scene.out{animation:nmCardOut 260ms ease-in both}
 body.nx-mobile #nxStage .nx-st-scene.in::before{display:none}
 body.nx-mobile.nx-staging .nm-stage{visibility:hidden}
 body.nx-mobile.nx-staging #chat.nm-chat-open,body.nx-mobile.nx-staging .nm-chat-head{visibility:hidden;pointer-events:none}
 body.nx-mobile[data-nm-panel=answer] .nm-stage{visibility:hidden}
 body.nx-mobile #chat.nm-chat-open,body.nx-mobile[data-nm-panel=history] #chat.nm-chat-open{inset:var(--nm-content-top,88px) 16px var(--nm-content-bottom,142px);height:auto;max-height:none;padding:62px 20px 24px}
 body.nx-mobile .nm-chat-head,body.nx-mobile[data-nm-panel=history] .nm-chat-head{top:var(--nm-content-top,88px);bottom:auto;left:17px;right:17px}
 @keyframes nmCardIn{from{opacity:0;transform:translate3d(32px,20px,-90px) scale(.94)}to{opacity:1;transform:none}}
 @keyframes nmCardBack{from{opacity:0;transform:translate3d(-32px,12px,-90px) scale(.94)}to{opacity:1;transform:none}}
 @keyframes nmCardOut{to{opacity:0;transform:translate3d(-36px,-8px,-70px) scale(.96)}}
 @media(max-height:650px){.nm-head{min-height:60px}.nm-input-area{padding:8px 0 12px}.nm-orb-wrap{width:min(60vw,32svh)}.nm-hint{font-size:21px;margin-top:10px}.nm-stage{padding-bottom:0}}
 @media(prefers-reduced-motion:reduce){body.nx-mobile *,body.nx-mobile *::before{animation:none!important;transition:none!important}}
}
