.scan-universe{display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;isolation:isolate;border:1px solid #b8995840;border-radius:22px;background:#0c111b;color:#eee7d9;margin:22px 0 28px;scroll-margin-top:150px}
.su-scene{position:relative;height:540px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 65% 45%,#544256,#121f34 45%,#050914 75%)}
.su-cosmos{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.su-scene-heading{position:absolute;left:32px;top:34px;width:min(390px,65%);pointer-events:none;z-index:1}
.su-eyebrow{font:10px monospace;letter-spacing:2px;color:#d5b978}
.su-scene-heading h3{font:normal clamp(30px,4vw,46px)/1.12 Georgia,serif;color:#f1e8d6;margin:15px 0;text-shadow:0 2px 24px #000}
.su-motion{position:absolute;right:22px;top:24px;z-index:3;border:1px solid #c5ad6450;background:#0c1425dd;color:#e6d4ac;border-radius:99px;font:12px sans-serif;padding:10px 14px;cursor:pointer;min-height:44px}
.su-motion:focus-visible,.su-planet:focus-visible{outline:2px solid #f1d59a;outline-offset:3px}
.su-voyage-hud{position:absolute;left:32px;bottom:100px;display:grid;gap:9px;pointer-events:none}
.su-voyage-mode{font:10px monospace;letter-spacing:2px;color:#ddc38b}
.su-voyage-mode:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#e8c577;margin-right:8px;box-shadow:0 0 12px #e8c577}
.su-voyage-place{font:normal 24px Georgia,serif;color:#eee5d4}
.su-voyage-note{font:11px/1.5 sans-serif;color:#a8b3c6}
.su-checkpoints{position:absolute;bottom:18px;left:24px;right:24px;display:flex;justify-content:space-between;gap:8px;border-top:1px solid #d3bd8526;padding-top:12px;z-index:2}
.su-planet{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:44px;min-height:48px;border:1px solid #b8995825;border-radius:12px;background:#0c1425bd!important;color:#b5bccc;font:11px monospace!important;padding:8px;cursor:pointer;box-shadow:none!important;transition:border-color .3s,background .3s}
.su-planet i{display:block;flex-shrink:0;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 28% 25%,#b9d8eb,#496481 45%,#101c30 85%);box-shadow:inset -3px -3px 8px #0009}
.su-planet:nth-child(3n) i{background:radial-gradient(circle at 28% 25%,#e9c899,#9d744e 45%,#291c20 85%)}
.su-planet:nth-child(4) i{background:radial-gradient(circle at 28% 25%,#a3dfde,#327681 45%,#102430 85%)}
.su-planet.has-discovery{border-color:#cfa76890;color:#f2dbaa}.su-planet.has-discovery:after{content:'';position:absolute;right:5px;top:5px;width:5px;height:5px;background:#eed4a0;border-radius:50%}
.su-planet.is-scanning i{animation:su-pulse 1.8s ease-in-out infinite;box-shadow:0 0 16px #e1ba7666}.su-planet[aria-expanded=true],.su-planet:hover{border-color:#e4c78a;background:#263047!important}
.su-copy{padding:26px 32px;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);column-gap:36px;align-items:start;border-top:1px solid #d3bd8520}
.su-status{font-size:17px;font-weight:600;line-height:1.5;margin:0 0 10px;color:#ead6a9}.su-detail{font-size:13px;line-height:1.7;color:#bcb9b1;margin:8px 0 14px}.su-footnote{font-size:11px;line-height:1.6;color:#999fAD;grid-column:2;grid-row:2/6}
.su-copy>.su-status,.su-copy>.su-meter,.su-copy>.su-detail,.su-copy>.su-timing,.su-copy>.su-milestone{grid-column:1}
.su-controls{grid-column:2;grid-row:1}.su-copy .su-controls .hzrow{margin-top:0!important}
.su-meter:has(progress[hidden]){display:none}.su-timing:empty,.su-milestone:empty{display:none}
.su-progress{width:100%;height:5px;accent-color:#d5b978;border:0;border-radius:9px;overflow:hidden}.su-progress::-webkit-progress-bar{background:#ffffff12}.su-progress::-webkit-progress-value{background:#d5b978;transition:width .6s}
.su-paused *,.su-background *{animation-play-state:paused!important}
#scan-results[hidden]{display:none!important}#scan-results:not([hidden]){animation:su-reveal .5s ease-out}
@keyframes su-pulse{50%{transform:scale(1.16)}}@keyframes su-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.su-meter{display:flex;align-items:center;gap:12px}.su-percent{font:18px monospace;color:#e3c88e}.su-timing{font:11px/1.7 monospace;color:#bcb9b1}.su-milestone{font-size:12px;color:#e4cd99;min-height:18px}.su-copy h3{margin-bottom:16px}.su-copy .su-controls .hzrow{margin:16px 0 10px}.su-copy .su-controls .brun{margin:0 0 12px;display:flex;flex-wrap:wrap;gap:10px}.su-controls .seg{background:#ffffff0b;border:1px solid #c5ad6440}.su-controls .hz{color:#c5c0b4!important;background:transparent!important}.su-controls .hz.active{background:#d9bd80!important;color:#171a1f!important}.su-controls #genbtn2{background:linear-gradient(120deg,#efdab0,#b99859)!important;color:#151a20!important;border:0;border-radius:10px;min-height:44px;padding:11px 18px;font-size:13px}.su-controls #genbtn2:disabled{opacity:.65}.su-controls #gennote2{color:#c4bcae;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.su-controls .brun-note:empty{display:none}.su-controls .hz{min-height:40px;font-size:12px}
#view-ideas #progwrap2{display:none!important}body[data-tab=ideas] header.wrap{display:none!important}body[data-tab=ideas] #view-ideas{padding-top:12px}
.su-discoveries{grid-column:1/-1;padding:22px 26px 26px;border-top:1px solid #c5ad6426;background:#ffffff03;min-width:0}.su-discovery-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.su-discovery-head h4,.su-batch h4{font:normal 20px Georgia,serif;margin:0;color:#eee3cc}.su-discovery-head>span{font:9px monospace;letter-spacing:1.6px;color:#d5b978;border:1px solid #b9985940;padding:5px 8px;border-radius:20px}.su-discovery-note,.su-batch>p{font-size:12px;line-height:1.65;color:#b7b4ac}.su-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.su-card{min-width:0;background:linear-gradient(135deg,#222831,#141b23);border:1px solid #b9985936;border-radius:12px;overflow:hidden;animation:su-reveal .45s ease-out both;animation-delay:calc(var(--card-i,0)*65ms)}.su-card summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:16px;cursor:pointer;list-style:none}.su-card summary::-webkit-details-marker{display:none}.su-card summary:focus-visible{outline:2px solid #e4c785;outline-offset:-3px}.su-card-symbol{font:600 13px monospace;color:#ecd8ac;overflow-wrap:anywhere}.su-card-score{font:14px monospace;color:#f0e2c6}.su-card-name,.su-card-sector,.su-card-open{grid-column:1/-1;font-size:12px;color:#d3cfc5;overflow-wrap:anywhere}.su-card-sector{font-size:11px;color:#aaa89f}.su-card-open{font-size:11px;color:#d2b97e;margin-top:7px}.su-card p,.su-card small,.su-card a{display:block;margin:0;padding:0 16px 14px;font-size:12px;line-height:1.65;color:#d3cfc5}.su-card small{color:#a9a79e;font-size:10px}.su-card a{color:#e2c890;text-decoration:underline}.su-batch{padding-top:24px;margin-top:20px;border-top:1px solid #b9985936}.su-batch[hidden]{display:none}
.su-dock{position:fixed;right:20px;bottom:90px;z-index:990;background:#171d25!important;color:#edd8ab!important;border:1px solid #c5a669;border-radius:14px;padding:15px 20px;box-shadow:0 8px 30px #0004;font:13px/1.5 sans-serif;max-width:calc(100vw - 32px);cursor:pointer}.su-dock[hidden]{display:none!important}.su-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

@media(max-width:700px){.scan-universe{margin-top:12px;border-radius:18px}.su-scene{height:470px}.su-scene-heading{left:20px;top:72px;width:78%;max-width:330px}.su-scene-heading h3{font-size:32px}.su-motion{top:14px;right:14px;font-size:11px}.su-eyebrow{font-size:9px}.su-voyage-hud{left:20px;right:16px;bottom:104px}.su-voyage-place{font-size:23px}.su-voyage-note{font-size:10px}.su-checkpoints{left:12px;right:12px;gap:5px}.su-planet{flex-direction:column;gap:4px;padding:5px 2px;font-size:9px!important}.su-planet i{width:21px;height:21px}.su-copy{display:block;padding:22px 20px}.su-controls{margin-top:18px}.su-footnote{display:block}.su-discoveries{padding:20px}.su-cards{grid-template-columns:minmax(0,1fr)}.su-card summary{grid-template-columns:minmax(0,1fr) auto}.su-status{font-size:16px}.su-detail{font-size:13px}.su-dock{left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom))}.su-discovery-head h4{font-size:22px}}
@media(prefers-reduced-motion:reduce){.scan-universe *{animation:none!important;transition:none!important}#scan-results{animation:none!important}.su-motion{display:none}}


/* Leave the centre open for the destination as the camera approaches. */
.su-scene-heading{transition:opacity 1.2s ease,transform 1.2s ease}
.scan-universe[data-voyage=planet] .su-scene-heading{opacity:.55;transform:translateY(-8px)}
@media(max-width:700px){
  .su-scene-heading{top:64px;width:80%}
  .su-scene-heading h3{font-size:24px;line-height:1.12;margin-top:9px;max-width:260px}
  .scan-universe[data-voyage=planet] .su-scene-heading h3{opacity:0;transition:opacity 1s ease}
  .su-voyage-hud{bottom:100px}
}

.su-texture-credit{padding:0 26px 16px;font:10px/1.5 sans-serif;color:#a8b3c6;text-decoration:underline;justify-self:start}
.su-texture-credit:focus-visible{outline:2px solid #e4c785;outline-offset:3px}

/* ── Weekday planets ─────────────────────────────────────────────────── */
.su-planet span{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}
.su-planet span b{font:600 11px monospace;letter-spacing:1.5px;color:#e6dcc6}
.su-planet span small{font:10px monospace;color:#8f99ab}
.su-planet span small:empty{display:none}
.su-planet.is-up i{box-shadow:inset -3px -3px 8px #0009,0 0 0 2px #3fbf8055,0 0 14px #3fbf8040}
.su-planet.is-down i{box-shadow:inset -3px -3px 8px #0009,0 0 0 2px #e0605855,0 0 14px #e0605840}
.su-planet:hover i{transform:scale(1.12) rotate(-12deg)}
.su-planet i{transition:transform .35s cubic-bezier(.2,1.5,.4,1),box-shadow .3s}
.su-planet[aria-expanded=true] i{transform:scale(1.18);animation:su-pulse 2.2s ease-in-out infinite}
.su-day-open .su-voyage-hud,.su-day-open .su-scene-heading{opacity:0!important;transition:opacity .25s}

/* ── The synopsis: a cartoon bull pops up and presents the day ─────────── */
.su-day{position:absolute;left:50%;bottom:98px;transform:translateX(-50%);z-index:4;
  width:min(640px,calc(100% - 32px));display:flex;align-items:flex-end;gap:6px;pointer-events:none}
.su-day>*{pointer-events:auto}
.su-mascot{flex:0 0 96px;height:110px;transform-origin:50% 100%;animation:su-m-in .6s cubic-bezier(.2,1.6,.4,1) both}
.su-mascot svg{width:100%;height:100%;overflow:visible;animation:su-m-bob 2.8s ease-in-out .6s infinite}
.su-mascot .m-shadow{fill:#0006}
.su-mascot .m-helmet{fill:#bfe3ff1c;stroke:#d9eefe99;stroke-width:2}
.su-mascot .m-glare{fill:none;stroke:#ffffffa0;stroke-width:3;stroke-linecap:round}
.su-mascot .m-face{fill:#9a6a44}.su-mascot .m-ear{fill:#7d5234}
.su-mascot .m-horn{fill:#f1e2c0;stroke:#c9b48a;stroke-width:1}
.su-mascot .m-snout{fill:#d9a57c}.su-mascot .m-nostril{fill:#6b3f22}
.su-mascot .m-eyes circle{fill:#1b1410;transform-box:fill-box;transform-origin:center;animation:su-m-blink 4s 1s infinite}
.su-mascot .m-mouth{fill:none;stroke:#3a2414;stroke-width:2.4;stroke-linecap:round}
.su-mascot .m-body{fill:#e8e1d2;stroke:#b9ad95;stroke-width:1.5}
.su-mascot .m-arm{fill:none;stroke:#e8e1d2;stroke-width:7;stroke-linecap:round;transform-origin:78px 72px;animation:su-m-wave 1.1s ease-in-out .5s 2}
.su-day[data-mood=up] .su-mascot svg{animation:su-m-hop 1.4s ease-in-out .6s infinite}
.su-day[data-mood=down] .m-face{fill:#86603f}
.su-day[data-mood=wait] .m-eyes{animation:su-m-look 1.6s ease-in-out infinite}
.su-bubble{position:relative;flex:1;min-width:0;max-height:min(380px,calc(540px - 150px));overflow:auto;
  background:linear-gradient(160deg,#152033f7,#0c1322f7);border:1px solid #d8bd8266;border-radius:18px;
  padding:16px 18px 14px;box-shadow:0 18px 50px #000a;color:#e9e1d0;margin-bottom:26px;
  transform-origin:0 100%;animation:su-b-in .45s cubic-bezier(.2,1.4,.4,1) .12s both}
.su-bubble:before{content:'';position:absolute;left:-9px;bottom:22px;width:16px;height:16px;background:#0e1626;
  border-left:1px solid #d8bd8266;border-bottom:1px solid #d8bd8266;transform:rotate(45deg)}
.su-day.leaving .su-mascot{animation:su-m-out .25s ease-in both}
.su-day.leaving .su-bubble{animation:su-b-out .2s ease-in both}
.su-day-x{position:absolute;top:6px;right:8px;width:34px;height:34px;border:0;border-radius:50%;
  background:transparent;color:#c9bfa9;font-size:20px;cursor:pointer}
.su-day-x:hover{background:#ffffff14;color:#fff}
.su-day-x:focus-visible{outline:2px solid #e4c785}
.su-day-date{font:600 10px monospace;letter-spacing:2px;text-transform:uppercase;color:#d9bd80}
.su-day-syn{margin:7px 34px 12px 0;font:15px/1.55 Georgia,serif;color:#f1e8d6}
.su-day-idx{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.su-day-idx div{background:#ffffff0a;border:1px solid #ffffff12;border-radius:10px;padding:8px 10px;min-width:0}
.su-day-idx b{display:block;font:9px monospace;letter-spacing:1.2px;color:#9aa3b3}
.su-day-idx span{display:block;font:600 13px monospace;color:#f0e6d2;margin-top:4px}
.su-day-idx em,.su-flow em{font:11px monospace;font-style:normal;color:#b9b3a6}
.su-bubble .up{color:#5fd39a}.su-bubble .dn{color:#f08a80}
.su-flows{margin-top:12px;display:grid;gap:7px}
.su-flows-h{font:9px monospace;letter-spacing:1.5px;text-transform:uppercase;color:#9aa3b3}
.su-flow{display:grid;grid-template-columns:72px 1fr 96px;gap:10px;align-items:center}
.su-flow b{font:500 11px monospace;color:#e2d8c3}
.su-flow em{text-align:right;font-size:12px}
.su-flow-bar{position:relative;height:10px;border-radius:5px;background:#ffffff0d}
.su-flow-bar:after{content:'';position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:#ffffff40}
.su-flow-bar i{position:absolute;top:0;bottom:0;width:0;border-radius:5px;animation:su-bar .7s cubic-bezier(.2,1,.3,1) .35s forwards}
.su-flow-bar i.buy{left:50%;background:linear-gradient(90deg,#2f9c68,#5fd39a)}
.su-flow-bar i.sell{right:50%;background:linear-gradient(270deg,#b3453d,#f08a80)}
.su-flow-none{margin:0;font-size:12px;line-height:1.6;color:#a9a497}
.su-day-src{display:block;margin-top:10px;font-size:10px;color:#8f97a6}
@keyframes su-bar{to{width:var(--w)}}
@keyframes su-m-in{0%{opacity:0;transform:translateY(60px) scale(.3) rotate(-20deg)}70%{opacity:1;transform:translateY(-8px) scale(1.08) rotate(4deg)}100%{transform:none}}
@keyframes su-m-out{to{opacity:0;transform:translateY(40px) scale(.4)}}
@keyframes su-b-in{0%{opacity:0;transform:scale(.4) translateY(20px)}100%{opacity:1;transform:none}}
@keyframes su-b-out{to{opacity:0;transform:scale(.8)}}
@keyframes su-m-bob{50%{transform:translateY(-5px) rotate(-2deg)}}
@keyframes su-m-hop{0%,100%{transform:none}30%{transform:translateY(-10px) rotate(-4deg)}45%{transform:translateY(0) scaleY(.94)}}
@keyframes su-m-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes su-m-wave{0%,100%{transform:rotate(0)}25%{transform:rotate(-28deg)}75%{transform:rotate(18deg)}}
@keyframes su-m-look{50%{transform:translateX(3px)}}
@media(max-width:700px){
  .su-planet span{align-items:center}
  .su-day{bottom:96px;width:calc(100% - 20px);gap:0}
  .su-mascot{flex-basis:62px;height:74px}
  .su-bubble{max-height:calc(470px - 120px);padding:14px 14px 12px;margin-bottom:18px}
  .su-day-syn{font-size:14px}
  .su-day-idx{grid-template-columns:repeat(2,minmax(0,1fr))}
  .su-flow{grid-template-columns:58px 1fr 84px;gap:8px}
}
@media(prefers-reduced-motion:reduce){.su-flow-bar i{width:var(--w)}}
@media(max-width:700px){
  .su-scene{transition:height .35s ease}
  .su-day-open .su-scene{height:640px}
  .su-day-open .su-bubble{max-height:520px}
  .su-flow b{white-space:nowrap;font-size:10px}
  .su-flow{grid-template-columns:62px 1fr 82px}
}
