/* Personal orbit. Local vector scenes and existing pet artwork; dark base retained. */
:root { --orbit-light:#d7deff; --orbit-dark:#34406d; --orbit-accent:#b0a4ff; --orbit-glow:#6878bd; --orbit-backdrop:#202841; }
.orbit-page-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 3px 24px; }
.orbit-page-heading h1 { font-size:clamp(26px,5vw,38px); letter-spacing:-.045em; line-height:1.15; margin:10px 0 0; }
.orbit-kicker { display:block; color:#a8b4c6; font-size:10px; font-weight:700; letter-spacing:.14em; line-height:1.6; }
.orbit-heading-symbol { font-size:58px; color:#b7c3db; font-weight:300; line-height:1; }
.orbit-section-heading,.orbit-hero-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.orbit-section-heading h2 { margin:5px 0; }
.orbit-chip { display:inline-flex; align-items:center; border:1px solid #fff2; border-radius:99px; padding:6px 10px; font-size:11px; color:#c4cee0; white-space:nowrap; }
.orbit-tabs { margin-bottom:18px; flex-wrap:wrap; }
.orbit-tabs button { flex-shrink:0; }
.orbit-pills { display:flex; flex-wrap:wrap; gap:7px; padding:5px 1px 12px; }
.orbit-pills button { flex-shrink:0; border:1px solid #ffffff13; border-radius:99px; padding:10px 16px; background:#ffffff05; color:#aebbd0; font-size:12px; min-height:40px; }
.orbit-pills button[aria-pressed=true] { color:#172131; background:#d4def0; border-color:#d4def0; }
.orbit-profile-hero { border:1px solid #ffffff14; border-radius:24px; padding:26px; margin-bottom:18px; position:relative; overflow:hidden; background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 28%,transparent),transparent 65%),var(--orbit-backdrop); }
.orbit-profile-hero>h1 { font-size:clamp(29px,6vw,44px); letter-spacing:-.05em; margin:20px 0; }
.orbit-profile-hero .player-card { background:transparent; border:0; padding:10px 0; box-shadow:none; }
.orbit-player { position:relative; isolation:isolate; overflow:visible; }
.orbit-player>.orbit-particles { border-radius:inherit; }
.orbit-player .player-avatar,.orbit-player .player-info,.orbit-player .player-actions { z-index:1; }
.orbit-public-bio { color:#d2dbea; font-size:13px; line-height:1.5; display:block; margin:6px 0; overflow-wrap:anywhere; }
.orbit-hero-note { color:#b8c7dc; font-size:14px; }
.orbit-passport { border-top:1px solid #ffffff17; display:grid; grid-template-columns:repeat(3,1fr); padding-top:20px; margin-top:20px; gap:10px; }
.orbit-passport strong { font-size:28px; font-weight:600; display:block; letter-spacing:-.045em; }
.orbit-passport strong small { color:#92a2bc; font-size:15px; font-weight:400; }
.orbit-passport span { font-size:11px; color:#aab9ce; }
.orbit-featured { display:flex; gap:13px; align-items:center; margin-top:24px; background:#0002; border:1px solid #ffffff0c; border-radius:12px; padding:12px; }
.orbit-featured>span { font-size:28px; }.orbit-featured small,.orbit-featured strong { display:block; }.orbit-featured small { color:#aebbd0; font-size:9px; letter-spacing:.12em; margin-bottom:4px; }.orbit-featured strong { font-size:13px; }
.orbit-quick-links { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:18px; }
.orbit-quick-links button { background:#1d2a39; border:1px solid #ffffff10; border-radius:18px; padding:18px; text-align:left; color:#e5eaf2; }
.orbit-quick-links span { font-size:26px; color:#c7b9ec; display:block; margin-bottom:12px; }
.orbit-quick-links strong,.orbit-quick-links small { display:block; }.orbit-quick-links strong { font-size:14px; font-weight:600; }.orbit-quick-links small { font-size:11px; color:#9dacc2; margin-top:6px; line-height:1.5; }
.orbit-daily { display:flex; align-items:center; gap:20px; justify-content:space-between; }.orbit-daily h2 { margin:5px 0; }.orbit-daily p { margin-bottom:0; }.orbit-daily button { flex-shrink:0; }
.orbit-actions { display:flex; flex-wrap:wrap; gap:8px; }.orbit-actions button { margin:0; }
.orbit-filter-row { display:flex; gap:12px; align-items:end; margin:20px 0 10px; }.orbit-filter-row label { flex:1; min-width:0; font-size:11px; color:#aab7ca; }.orbit-filter-row select { display:block; margin-top:6px; width:100%; }.orbit-filter-row button { min-height:44px; flex-shrink:0; }
.orbit-catalog-meta { display:flex; justify-content:space-between; gap:10px; margin:8px 0 16px; color:#aab7ca; font-size:11px; }.orbit-catalog-meta small { color:#8e9eb5; font-size:10px; text-align:right; }
.orbit-style-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.orbit-style-card { border:1px solid #ffffff13; border-radius:16px; background:#172331; overflow:hidden; min-width:0; }
.orbit-style-card.is-equipped { border-color:#a0c9bf; }
.orbit-style-visual { position:relative; display:grid; place-items:center; width:100%; height:136px; border:0; border-bottom:1px solid #ffffff0b; border-radius:0; padding:0; background:#15212f; color:#e4eaf5; overflow:hidden; }
.orbit-sample-hint { position:absolute; bottom:6px; right:7px; background:#0c1629b0; border-radius:6px; padding:4px 6px; color:#d7e0ee; font-size:9px; z-index:5; }
.orbit-style-description { padding:12px; }.orbit-style-description small { font-size:10px; color:#9cacc2; }.orbit-style-description h3 { font-size:13px; margin:6px 0 12px; min-height:32px; line-height:1.35; overflow-wrap:anywhere; }.orbit-style-description button { width:100%; font-size:12px; min-height:38px; padding:8px 5px; }
.orbit-load-more { margin-top:18px; width:100%; }
.orbit-scene { position:relative; isolation:isolate; overflow:hidden; display:grid; place-items:center; min-height:140px; background:radial-gradient(ellipse at 75% 25%,color-mix(in srgb,var(--orbit-glow) 40%,transparent),transparent 70%),var(--orbit-backdrop); width:100%; }
.scene-orb { position:absolute; width:62px; height:62px; border-radius:50%; background:var(--orbit-light); box-shadow:0 0 45px color-mix(in srgb,var(--orbit-accent) 30%,transparent); opacity:.75; top:16%; right:17%; z-index:-2; }
.scene-hill { position:absolute; width:85%; height:80%; border-radius:50%; background:var(--orbit-dark); bottom:-48%; left:-15%; transform:rotate(-17deg); opacity:.8; z-index:-1; }
.hill-two { left:40%; bottom:-58%; background:var(--orbit-glow); transform:rotate(10deg); opacity:.6; }
.scene-sparks { position:absolute; top:20%; left:12%; width:45%; letter-spacing:13px; color:var(--orbit-light); opacity:.6; font-size:15px; pointer-events:none; z-index:-1; }
.scene-sakura .scene-orb { border-radius:50% 15% 50% 15%; transform:rotate(25deg); opacity:.5; }.scene-sakura .scene-sparks { color:#ffc4e1; }
.scene-lagoon .hill-one,.scene-lagoon .hill-two { height:55%; width:120%; border-radius:45%; bottom:-25%; }
.scene-glacier .scene-hill { border-radius:0; transform:rotate(45deg); width:65%; height:100%; bottom:-70%; }
.scene-dune .scene-orb { background:#edc278; box-shadow:0 0 0 12px #edc27814,0 0 0 26px #edc27809; }
.scene-botanical .scene-hill { border-radius:50% 50% 0 0; transform:rotate(25deg); bottom:-35%; height:65%; width:35%; }
.scene-botanical .hill-two { left:65%; transform:rotate(-25deg); }.scene-botanical .scene-orb { width:40px; height:40px; }
.scene-synthwave .scene-hill { width:45%; height:65%; border-radius:0; transform:none; bottom:-25%; background:repeating-linear-gradient(0deg,var(--orbit-dark) 0 8px,var(--orbit-accent) 9px 10px); }
.scene-synthwave .hill-two { left:65%; height:85%; }.scene-ember .scene-orb { border-radius:60% 5% 60% 60%; transform:rotate(-30deg); }
.sample-banner,.sample-habitat { height:100%; min-height:136px; }.sample-orbit { font-size:48px; color:var(--orbit-light); z-index:2; }
.sample-avatar { display:grid; place-items:center; width:65px; height:65px; border-radius:50%; background:var(--orbit-dark); color:var(--orbit-light); font-size:29px; }
.sample-frame { border:3px solid var(--orbit-accent); box-shadow:0 0 0 5px #ffffff08; }.sample-aura { box-shadow:0 0 28px 10px var(--orbit-glow); }
.orbit-mini-board { display:grid; grid-template-columns:repeat(4,1fr); width:98px; height:98px; border:4px solid var(--orbit-dark); border-radius:9px; overflow:hidden; }
.orbit-mini-board span { background:var(--orbit-light); color:#152132; font-size:23px; line-height:1; display:grid; place-items:center; }
.orbit-mini-board span:nth-child(8n+2),.orbit-mini-board span:nth-child(8n+4),.orbit-mini-board span:nth-child(8n+5),.orbit-mini-board span:nth-child(8n+7) { background:var(--orbit-dark); color:var(--orbit-light); }
.orbit-mini-tiles { display:grid; gap:5px; grid-template-columns:1fr 1fr; width:90px; height:90px; }.orbit-mini-tiles b { display:grid; place-items:center; font-size:20px; border-radius:8px; background:var(--orbit-light); color:#162031; }.orbit-mini-tiles b:nth-child(2) { background:var(--orbit-accent); }.orbit-mini-tiles b:nth-child(3) { background:var(--orbit-glow); color:white; }.orbit-mini-tiles b:nth-child(4) { background:var(--orbit-dark); color:white; }
.orbit-symbol-sample { position:relative; font-size:38px; width:100%; height:100%; display:grid; place-items:center; }.orbit-symbol-sample.sample-title { font-size:13px; font-weight:700; padding:15px; line-height:1.5; color:#d8cbb1; }
.orbit-look-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.orbit-look { padding:16px; border:1px solid #ffffff15; background:#162332; border-radius:16px; min-width:0; }.orbit-look-number { display:block; font-size:25px; font-weight:300; color:#8093b0; margin-bottom:20px; }.orbit-look label { font-size:11px; color:#aab8cc; }.orbit-look input { margin:6px 0 10px; width:100%; min-width:0; }.orbit-look>small { color:#8fa2ba; font-size:11px; display:block; margin-bottom:12px; }.orbit-look .orbit-actions button { width:100%; font-size:12px; }
.orbit-postcard-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:20px; }.orbit-postcard { border:1px solid #ffffff16; border-radius:16px; overflow:hidden; background:#162332; }.orbit-postcard .orbit-scene { min-height:175px; }.postcard-icon { font-size:58px; z-index:1; filter:drop-shadow(0 5px 10px #0003); }.postcard-stamp { position:absolute; bottom:12px; right:12px; font-size:8px; letter-spacing:.1em; border:1px dashed #d5e3f680; padding:5px 8px; transform:rotate(-7deg); color:#d6e0ef; }.postcard-body { padding:16px; }.postcard-body h3 { margin:0 0 8px; font-size:15px; }.postcard-body p { font-size:12px; min-height:55px; line-height:1.6; color:#a9b8cd; }.postcard-body small { color:#8fa2ba; font-size:10px; display:block; }.postcard-body button { margin-top:10px; font-size:12px; }.is-locked .orbit-scene { opacity:.5; filter:saturate(.4); }.is-locked .postcard-icon { color:#dce6f9; }
.orbit-collection-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:18px; }.orbit-collection { background:var(--orbit-backdrop); border:1px solid color-mix(in srgb,var(--orbit-accent) 20%,transparent); border-radius:14px; padding:16px 12px; text-align:left; color:#e4ebf5; min-width:0; }.collection-symbol { font-size:30px; color:var(--orbit-accent); display:block; margin-bottom:14px; }.orbit-collection strong { font-size:12px; display:block; min-height:32px; }.orbit-collection small { font-size:11px; color:#b4c1d4; display:block; margin:10px 0; }
.orbit-meter { background:#ffffff10; height:5px; border-radius:99px; overflow:hidden; }.orbit-meter>span { display:block; height:100%; background:#b4c8ee; border-radius:99px; }.orbit-collection .orbit-meter>span { background:var(--orbit-accent); }
.orbit-pet-home { background:#1d2a39; border:1px solid #ffffff14; border-radius:24px; padding:22px; overflow:hidden; }.orbit-pet-title { display:flex; align-items:center; justify-content:space-between; gap:12px; text-align:left; }.orbit-pet-title h2 { font-size:28px; margin:5px 0 12px; letter-spacing:-.04em; overflow-wrap:anywhere; }.pet-home-scene { height:265px; border-radius:18px; margin-top:15px; }.orbit-pet-avatar.pet-touch { position:relative; width:170px; height:170px; padding:0; margin:12px auto; border:0; background:transparent; box-shadow:none; display:grid; place-items:center; border-radius:50%; z-index:2; }.orbit-pet-avatar .pet-image { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 15px 14px #07111d55); }.orbit-pet-avatar .orbit-accessory { position:absolute; display:block; font-size:35px; top:8%; right:14%; z-index:4; filter:drop-shadow(0 3px 3px #0003); pointer-events:none; }.orbit-accessory.accessory-scarf,.orbit-accessory.accessory-bandana { top:58%; right:36%; font-size:38px; }.orbit-accessory.accessory-shades { top:37%; right:30%; font-size:50px; }.orbit-accessory.accessory-wings { top:42%; right:-4%; }.orbit-accessory.accessory-halo { top:-10%; right:32%; }.orbit-accessory.accessory-headphones { top:15%; right:30%; font-size:60px; }.orbit-accessory.accessory-wizard,.orbit-accessory.accessory-crown { top:-5%; right:28%; font-size:48px; }
.skin-starlight .pet-image { filter:sepia(.22) hue-rotate(180deg) saturate(.7) brightness(1.1) drop-shadow(0 10px 18px #a3b4ff55); }.skin-sakura .pet-image { filter:sepia(.3) hue-rotate(290deg) saturate(.9) brightness(1.1); }.skin-lagoon .pet-image { filter:sepia(.7) hue-rotate(120deg) saturate(.8); }.skin-ember .pet-image { filter:sepia(.2) saturate(1.65) brightness(1.05); }.skin-glacier .pet-image { filter:grayscale(.7) sepia(.3) hue-rotate(165deg) brightness(1.3); }.skin-dune .pet-image { filter:sepia(.6) saturate(.8) brightness(1.12); }.skin-botanical .pet-image { filter:sepia(.6) hue-rotate(50deg) saturate(.8); }.skin-synthwave .pet-image { filter:sepia(.5) hue-rotate(225deg) saturate(1.3); }
.sample-habitat .orbit-pet-avatar { width:95px; height:95px; margin:10px auto; }.sample-habitat .orbit-accessory { font-size:25px; }.sample-habitat .scene-orb { width:35px; height:35px; }.orbit-pet-home .pet-reaction { font-size:13px; color:#becce1; line-height:1.6; margin:16px 0 23px; min-height:21px; }
.orbit-pet-progress { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:24px; text-align:left; }.orbit-pet-progress>div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; }.orbit-pet-progress span { font-size:11px; color:#9fb0c9; }.orbit-pet-progress strong { font-size:11px; font-weight:600; }.orbit-pet-progress .orbit-meter { width:100%; }.orbit-pet-progress>div+div .orbit-meter>span { background:#e3b5c9; }
.orbit-care-actions { display:flex; flex-wrap:wrap; gap:8px; }.orbit-care-actions button { flex:1; font-size:12px; padding:12px 8px; min-width:120px; }.orbit-footnote { font-size:11px!important; line-height:1.7; color:#97a9c2!important; margin:14px 0 18px; }.orbit-tricks { border-top:1px solid #ffffff12; padding-top:16px; }.orbit-tricks>small { color:#90a2be; font-size:9px; letter-spacing:.12em; }.orbit-tricks>div { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin-top:8px; }.orbit-tricks button { font-size:11px; }.orbit-rename { text-align:left; border-top:1px solid #ffffff12; margin-top:14px; padding-top:15px; }.orbit-rename summary { color:#b3c3da; font-size:12px; cursor:pointer; }.orbit-rename label { display:block; font-size:12px; margin-top:14px; }.orbit-rename input { margin:8px 0; }.orbit-rename button { margin-top:8px; }
.orbit-travel-teaser { display:flex; width:100%; align-items:center; gap:16px; border:1px solid #b3c2e125; background:linear-gradient(115deg,#28384d,#222d43); border-radius:18px; margin:18px 0; padding:20px; text-align:left; color:#e5ecf8; }.orbit-travel-teaser>span { font-size:32px; }.orbit-travel-teaser strong { display:block; font-size:14px; margin-bottom:7px; }.orbit-travel-teaser small { font-size:11px; color:#a8b9d0; }
.orbit-adopt-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px; }.orbit-adopt { border:1px solid #ffffff12; border-radius:16px; background:#162332; padding:12px 8px; text-align:center; min-width:0; }.orbit-adopt.is-selected { border-color:#9fbde175; }.orbit-adopt .orbit-pet-avatar { width:94px; height:94px; max-width:100%; }.orbit-adopt .orbit-accessory { font-size:24px; }.orbit-adopt h3 { font-size:14px; margin:5px 0; overflow-wrap:anywhere; }.orbit-adopt p { font-size:11px; margin:8px 0 14px; }.orbit-adopt button { width:100%; padding:9px 4px; font-size:11px; min-height:38px; }.orbit-pet-welcome { text-align:center; }.orbit-pet-welcome .orbit-scene { border-radius:16px; }.orbit-pet-welcome h2 { margin-top:20px; }.orbit-care-rules { font-size:12px; }.orbit-care-rules summary { cursor:pointer; color:#bdcce2; }
.orbit-route-grid { display:grid; gap:12px; margin-top:20px; }.orbit-route { display:grid; grid-template-columns:60px 1fr auto; gap:15px; align-items:center; border:1px solid #ffffff10; border-radius:16px; padding:15px; background:#172331; }.orbit-route.is-highlighted { border-color:#b4c8ee80; }.orbit-route-icon { width:60px; height:64px; border-radius:12px; background:var(--orbit-backdrop); display:grid; place-items:center; font-size:28px; }.orbit-route h3 { font-size:14px; margin:0 0 6px; }.orbit-route p { font-size:11px; color:#97aac5; margin:0 0 8px; }.orbit-route small { color:#bdcde2; font-size:10px; }.orbit-route button { font-size:12px; }.orbit-active-trip .orbit-scene { border-radius:16px; height:190px; margin-bottom:22px; }.orbit-active-trip .orbit-meter { margin-top:22px; }.orbit-cancel { margin-top:18px; font-size:11px; color:#a2b4ce; }.orbit-cancel summary { cursor:pointer; }.orbit-cancel p { font-size:12px; }
.orbit-quest-hero { position:relative; overflow:hidden; padding:28px; margin:14px 0 20px; background:radial-gradient(ellipse at 100% 100%,#51678055,transparent 60%),#1f2d3e; border:1px solid #ffffff13; border-radius:24px; }.orbit-quest-hero h1 { font-size:36px; letter-spacing:-.05em; margin:14px 0 12px; }.orbit-quest-hero>p { max-width:390px; color:#b6c6dc; font-size:13px; line-height:1.7; }.orbit-quest-summary { display:flex; align-items:center; gap:15px; padding-top:14px; }.orbit-quest-summary>strong { font-size:50px; font-weight:400; letter-spacing:-.06em; }.orbit-quest-summary>span:not(.quest-hero-star) { font-size:12px; color:#c2d1e5; }.orbit-quest-summary small { display:block; color:#a7c6bc; margin-top:7px; }.quest-hero-star { position:absolute; right:24px; bottom:10px; font-size:130px; color:#afc1de28; font-weight:300; transform:rotate(15deg); }
.orbit-quests .quest-card { padding:20px; display:flex; flex-direction:column; gap:0; background:#1d2a39; border-radius:18px; border:1px solid #ffffff12; }.orbit-quests .quest-ready { border-color:#9cc0b470; }.orbit-quest-heading { display:flex; align-items:center; gap:8px; margin-bottom:17px; }.orbit-quest-icon { display:grid; place-items:center; width:32px; height:32px; border:1px solid #ffffff1a; border-radius:10px; font-size:21px; color:#bacbe4; flex-shrink:0; }.orbit-quest-heading .orbit-chip { font-size:9px; padding:5px 7px; }.orbit-quest-heading strong { margin-left:auto; font-size:12px; color:#dfcdab; white-space:nowrap; }.orbit-quests h3 { font-size:17px; margin:0 0 10px; }.orbit-quests p { font-size:12px; color:#a2b4cd; line-height:1.65; margin:0 0 20px; flex:1; }.orbit-quest-count { display:flex; justify-content:space-between; gap:8px; font-size:10px; color:#a6b7cf; margin:10px 0; }.orbit-quests .orbit-meter { margin-bottom:17px; }.orbit-quests button { width:100%; font-size:12px; }.orbit-cosmetic-reward { background:#beadd111; border:1px solid #beadd120; border-radius:9px; padding:9px; color:#d6c5e5; font-size:10px; margin-bottom:10px; }
.orbit-fitting-room { width:min(540px,calc(100vw - 28px)); max-height:90dvh; padding:24px; background:#1d2a39; border:1px solid #506079; border-radius:24px; color:#edf2fa; overflow:auto; }.orbit-fitting-room::backdrop { background:#060c16c9; backdrop-filter:blur(5px); }.orbit-fitting-room h2 { margin:18px 0 10px; font-size:24px; }.orbit-fitting-room>p { color:#adbed5; font-size:12px; line-height:1.7; }.orbit-fitting-room .orbit-actions { margin-top:20px; }.orbit-big-sample { display:grid; place-items:center; min-height:260px; border-radius:18px; background:#162332; }.orbit-big-sample .orbit-mini-board { width:220px; height:220px; border-width:7px; }.orbit-big-sample .orbit-mini-board span { font-size:40px; }.orbit-big-sample .orbit-mini-tiles { width:210px; height:210px; gap:10px; }.orbit-big-sample .orbit-mini-tiles b { font-size:32px; }
.orbit-particles { position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:0; color:#c7d1f0; }.orbit-particles i { position:absolute; font-style:normal; font-size:calc(9px + var(--i)*1px); top:calc(9% + var(--i)*8%); left:calc(4% + var(--i)*11%); opacity:.3; animation:orbit-drift calc(4s + var(--i)*.3s) ease-in-out infinite alternate; animation-delay:calc(var(--i)*-.6s); }.particles-petals { color:#f1b9d7; }.particles-bubbles i { font-size:calc(14px + var(--i)*2px); opacity:.4; }.particles-fireflies i { font-size:35px; color:#d9eca1; text-shadow:0 0 10px #d9eca1; }.particles-constellation { background:linear-gradient(24deg,transparent 49.7%,#c1d2f515 50%,transparent 50.3%); }
@keyframes orbit-drift { to { transform:translate(8px,-14px) rotate(20deg); opacity:.8; } }
@keyframes orbit-wave { 25%,75% { transform:rotate(-10deg); } 50% { transform:rotate(10deg) translateY(-10px); } }
@keyframes orbit-spin { 50% { transform:rotateY(180deg) translateY(-14px); } 100% { transform:rotateY(360deg); } }
@keyframes orbit-wish { 50% { transform:translateY(-14px) scale(1.06); filter:drop-shadow(0 0 25px #c0c5ff); } }
.orbit-pet-home[data-trick=wave] .pet-home-scene .orbit-pet-avatar { animation:orbit-wave 1.4s ease-in-out; }.orbit-pet-home[data-trick=spin] .pet-home-scene .orbit-pet-avatar { animation:orbit-spin 1.6s ease-in-out; }.orbit-pet-home[data-trick=wish] .pet-home-scene .orbit-pet-avatar { animation:orbit-wish 1.8s ease-in-out; }
/* Previously owned themes keep their preview colors. */
[data-legacy=ocean] { --orbit-accent:#73c4ee; --orbit-dark:#25506b; }[data-legacy=gold] { --orbit-accent:#e7c576; --orbit-dark:#5c4931; }[data-legacy=aurora],[data-legacy=violet] { --orbit-accent:#c2a0ff; --orbit-glow:#8b65c4; }[data-legacy=mint] { --orbit-glow:#72c7a4; }[data-legacy=sunset] { --orbit-glow:#db8c79; }[data-legacy=forest] { --orbit-light:#e1e8d1; --orbit-dark:#638166; }[data-legacy=midnight] { --orbit-light:#c3d2ec; --orbit-dark:#364760; }
@media(max-width:600px) { .orbit-style-grid { grid-template-columns:1fr 1fr; gap:10px; }.orbit-look-grid { grid-template-columns:1fr; }.orbit-look { display:grid; grid-template-columns:32px 1fr; column-gap:12px; }.orbit-look-number { grid-row:1/5; margin-top:4px; }.orbit-look .orbit-actions { grid-column:2; }.orbit-look .orbit-actions button { width:auto; flex:1; }.orbit-look label,.orbit-look input,.orbit-look>small { grid-column:2; }.orbit-collection-grid { grid-template-columns:1fr 1fr; }.orbit-daily { flex-direction:column; align-items:stretch; gap:14px; }.orbit-profile-hero { padding:22px; }.orbit-quest-hero { padding:24px; }.orbit-quest-hero h1 { font-size:30px; }.orbit-quests .quest-card { padding:18px; }.orbit-pet-home { padding:18px; }.pet-home-scene { height:235px; }.orbit-route { grid-template-columns:45px 1fr; gap:12px; padding:13px; }.orbit-route-icon { width:45px; height:53px; font-size:24px; }.orbit-route button { grid-column:2; justify-self:start; }.orbit-adopt-grid { gap:7px; }.orbit-adopt .orbit-pet-avatar { width:75px; height:75px; }.orbit-adopt button { font-size:10px; }.orbit-postcard-grid { gap:12px; }.postcard-body { padding:13px; }.postcard-body p { min-height:90px; }.orbit-postcard .orbit-scene { min-height:140px; }.postcard-icon { font-size:46px; } }
@media(max-width:370px) { .orbit-postcard-grid { grid-template-columns:1fr; }.postcard-body p { min-height:0; }.orbit-pet-title { flex-wrap:wrap; }.orbit-pet-progress { gap:12px; }.orbit-adopt-grid { grid-template-columns:1fr; }.orbit-adopt { display:grid; grid-template-columns:80px 1fr; align-items:center; }.orbit-adopt .orbit-pet-avatar { grid-row:1/4; }.orbit-adopt h3,.orbit-adopt p { margin:5px; }.orbit-quick-links { gap:8px; }.orbit-quick-links button { padding:14px; } }
@media(prefers-reduced-motion:reduce) { .orbit-particles i,.orbit-pet-home[data-trick] .pet-home-scene .orbit-pet-avatar { animation:none; }.orbit-pet-home .pet-image { transition:none; } }

/* Curated palette tokens: keep in sync with style_catalog.COLLECTIONS. */
.scene-starlight,[data-banner=starlight],[data-orbit-tiles=starlight]{--orbit-light:#d7deff;--orbit-dark:#34406d;--orbit-accent:#b0a4ff;--orbit-glow:#6878bd;--orbit-backdrop:#202841;}
.orbit-player[data-banner=starlight]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=starlight]{border:3px solid #b0a4ff;box-shadow:0 0 0 4px #6878bd25;}
[data-orbit-aura=starlight]{--aura-color:#6878bd;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=starlight] .board .square{background:#d7deff;}
#main[data-orbit-board=starlight] .board .square.dark{background:#34406d;}
#main[data-orbit-board=starlight] .reversi-cell{background:#34406d;}
#main[data-orbit-pieces=starlight] .orbit-light-piece g{fill:#d7deff;stroke:#34406d;}
#main[data-orbit-pieces=starlight] .orbit-dark-piece g{fill:#34406d;stroke:#d7deff;}
.scene-sakura,[data-banner=sakura],[data-orbit-tiles=sakura]{--orbit-light:#ffe0ed;--orbit-dark:#774861;--orbit-accent:#f2a7cb;--orbit-glow:#c2699a;--orbit-backdrop:#372535;}
.orbit-player[data-banner=sakura]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=sakura]{border:3px solid #f2a7cb;box-shadow:0 0 0 4px #c2699a25;}
[data-orbit-aura=sakura]{--aura-color:#c2699a;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=sakura] .board .square{background:#ffe0ed;}
#main[data-orbit-board=sakura] .board .square.dark{background:#774861;}
#main[data-orbit-board=sakura] .reversi-cell{background:#774861;}
#main[data-orbit-pieces=sakura] .orbit-light-piece g{fill:#ffe0ed;stroke:#774861;}
#main[data-orbit-pieces=sakura] .orbit-dark-piece g{fill:#774861;stroke:#ffe0ed;}
.scene-lagoon,[data-banner=lagoon],[data-orbit-tiles=lagoon]{--orbit-light:#c7f2eb;--orbit-dark:#28616b;--orbit-accent:#7be0cd;--orbit-glow:#369fba;--orbit-backdrop:#193640;}
.orbit-player[data-banner=lagoon]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=lagoon]{border:3px solid #7be0cd;box-shadow:0 0 0 4px #369fba25;}
[data-orbit-aura=lagoon]{--aura-color:#369fba;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=lagoon] .board .square{background:#c7f2eb;}
#main[data-orbit-board=lagoon] .board .square.dark{background:#28616b;}
#main[data-orbit-board=lagoon] .reversi-cell{background:#28616b;}
#main[data-orbit-pieces=lagoon] .orbit-light-piece g{fill:#c7f2eb;stroke:#28616b;}
#main[data-orbit-pieces=lagoon] .orbit-dark-piece g{fill:#28616b;stroke:#c7f2eb;}
.scene-ember,[data-banner=ember],[data-orbit-tiles=ember]{--orbit-light:#ffe0c2;--orbit-dark:#874d39;--orbit-accent:#ffb278;--orbit-glow:#d96b4e;--orbit-backdrop:#402a27;}
.orbit-player[data-banner=ember]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=ember]{border:3px solid #ffb278;box-shadow:0 0 0 4px #d96b4e25;}
[data-orbit-aura=ember]{--aura-color:#d96b4e;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=ember] .board .square{background:#ffe0c2;}
#main[data-orbit-board=ember] .board .square.dark{background:#874d39;}
#main[data-orbit-board=ember] .reversi-cell{background:#874d39;}
#main[data-orbit-pieces=ember] .orbit-light-piece g{fill:#ffe0c2;stroke:#874d39;}
#main[data-orbit-pieces=ember] .orbit-dark-piece g{fill:#874d39;stroke:#ffe0c2;}
.scene-glacier,[data-banner=glacier],[data-orbit-tiles=glacier]{--orbit-light:#e0f4ff;--orbit-dark:#476880;--orbit-accent:#a0dfff;--orbit-glow:#6395ca;--orbit-backdrop:#253647;}
.orbit-player[data-banner=glacier]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=glacier]{border:3px solid #a0dfff;box-shadow:0 0 0 4px #6395ca25;}
[data-orbit-aura=glacier]{--aura-color:#6395ca;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=glacier] .board .square{background:#e0f4ff;}
#main[data-orbit-board=glacier] .board .square.dark{background:#476880;}
#main[data-orbit-board=glacier] .reversi-cell{background:#476880;}
#main[data-orbit-pieces=glacier] .orbit-light-piece g{fill:#e0f4ff;stroke:#476880;}
#main[data-orbit-pieces=glacier] .orbit-dark-piece g{fill:#476880;stroke:#e0f4ff;}
.scene-dune,[data-banner=dune],[data-orbit-tiles=dune]{--orbit-light:#f5e3b6;--orbit-dark:#776049;--orbit-accent:#e5c784;--orbit-glow:#b3915d;--orbit-backdrop:#39332a;}
.orbit-player[data-banner=dune]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=dune]{border:3px solid #e5c784;box-shadow:0 0 0 4px #b3915d25;}
[data-orbit-aura=dune]{--aura-color:#b3915d;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=dune] .board .square{background:#f5e3b6;}
#main[data-orbit-board=dune] .board .square.dark{background:#776049;}
#main[data-orbit-board=dune] .reversi-cell{background:#776049;}
#main[data-orbit-pieces=dune] .orbit-light-piece g{fill:#f5e3b6;stroke:#776049;}
#main[data-orbit-pieces=dune] .orbit-dark-piece g{fill:#776049;stroke:#f5e3b6;}
.scene-botanical,[data-banner=botanical],[data-orbit-tiles=botanical]{--orbit-light:#e0ecc8;--orbit-dark:#486445;--orbit-accent:#b3d788;--orbit-glow:#6d9568;--orbit-backdrop:#29392d;}
.orbit-player[data-banner=botanical]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=botanical]{border:3px solid #b3d788;box-shadow:0 0 0 4px #6d956825;}
[data-orbit-aura=botanical]{--aura-color:#6d9568;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=botanical] .board .square{background:#e0ecc8;}
#main[data-orbit-board=botanical] .board .square.dark{background:#486445;}
#main[data-orbit-board=botanical] .reversi-cell{background:#486445;}
#main[data-orbit-pieces=botanical] .orbit-light-piece g{fill:#e0ecc8;stroke:#486445;}
#main[data-orbit-pieces=botanical] .orbit-dark-piece g{fill:#486445;stroke:#e0ecc8;}
.scene-synthwave,[data-banner=synthwave],[data-orbit-tiles=synthwave]{--orbit-light:#efd5ff;--orbit-dark:#573e82;--orbit-accent:#e4a0ff;--orbit-glow:#9675e7;--orbit-backdrop:#302440;}
.orbit-player[data-banner=synthwave]{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--orbit-glow) 35%,transparent),transparent 80%),var(--orbit-backdrop);}
[data-orbit-frame=synthwave]{border:3px solid #e4a0ff;box-shadow:0 0 0 4px #9675e725;}
[data-orbit-aura=synthwave]{--aura-color:#9675e7;filter:drop-shadow(0 0 12px var(--aura-color));}
#main[data-orbit-board=synthwave] .board .square{background:#efd5ff;}
#main[data-orbit-board=synthwave] .board .square.dark{background:#573e82;}
#main[data-orbit-board=synthwave] .reversi-cell{background:#573e82;}
#main[data-orbit-pieces=synthwave] .orbit-light-piece g{fill:#efd5ff;stroke:#573e82;}
#main[data-orbit-pieces=synthwave] .orbit-dark-piece g{fill:#573e82;stroke:#efd5ff;}

.merge-board[data-orbit-tiles]:not([data-orbit-tiles=default]) { background:var(--orbit-backdrop); border-color:var(--orbit-dark); }
.merge-board[data-orbit-tiles]:not([data-orbit-tiles=default]) .merge-tile:not(.tile-0) { background:var(--orbit-light); color:#142135; }
.merge-board[data-orbit-tiles]:not([data-orbit-tiles=default]) :is(.tile-8,.tile-16) { background:var(--orbit-accent); }
.merge-board[data-orbit-tiles]:not([data-orbit-tiles=default]) :is(.tile-32,.tile-64) { background:var(--orbit-glow); color:#fff; }
.merge-board[data-orbit-tiles]:not([data-orbit-tiles=default]) :is(.tile-128,.tile-256) { background:var(--orbit-dark); color:#fff; }
.merge-board[data-orbit-tiles]:not([data-orbit-tiles=default]) :is(.tile-512,.tile-1024,.tile-2048) { background:var(--orbit-accent); color:#142135; box-shadow:inset 0 0 0 3px var(--orbit-light); }

.orbit-starter { display:flex; align-items:center; flex-wrap:wrap; gap:14px; padding:16px; margin:20px 0; border:1px solid #aebfe334; border-radius:16px; background:linear-gradient(120deg,#29394e,#282e45); }
.orbit-starter>span { color:#c1c8f2; font-size:30px; }.orbit-starter>div { flex:1; min-width:150px; }.orbit-starter strong { font-size:13px; display:block; }.orbit-starter small { display:block; color:#aebed5; font-size:10px; margin-top:5px; }.orbit-starter button { font-size:12px; }
#main[data-orbit-pieces=starlight] .checker,#main[data-orbit-pieces=starlight] .reversi-disc.disc-0{background:linear-gradient(145deg,#34406d,#16202d);border-color:#b0a4ff;}
#main[data-orbit-pieces=starlight] .checker.white,#main[data-orbit-pieces=starlight] .reversi-disc.disc-1{background:linear-gradient(145deg,#d7deff,#b0a4ff);border-color:#34406d;}
#main[data-orbit-pieces=sakura] .checker,#main[data-orbit-pieces=sakura] .reversi-disc.disc-0{background:linear-gradient(145deg,#774861,#16202d);border-color:#f2a7cb;}
#main[data-orbit-pieces=sakura] .checker.white,#main[data-orbit-pieces=sakura] .reversi-disc.disc-1{background:linear-gradient(145deg,#ffe0ed,#f2a7cb);border-color:#774861;}
#main[data-orbit-pieces=lagoon] .checker,#main[data-orbit-pieces=lagoon] .reversi-disc.disc-0{background:linear-gradient(145deg,#28616b,#16202d);border-color:#7be0cd;}
#main[data-orbit-pieces=lagoon] .checker.white,#main[data-orbit-pieces=lagoon] .reversi-disc.disc-1{background:linear-gradient(145deg,#c7f2eb,#7be0cd);border-color:#28616b;}
#main[data-orbit-pieces=ember] .checker,#main[data-orbit-pieces=ember] .reversi-disc.disc-0{background:linear-gradient(145deg,#874d39,#16202d);border-color:#ffb278;}
#main[data-orbit-pieces=ember] .checker.white,#main[data-orbit-pieces=ember] .reversi-disc.disc-1{background:linear-gradient(145deg,#ffe0c2,#ffb278);border-color:#874d39;}
#main[data-orbit-pieces=glacier] .checker,#main[data-orbit-pieces=glacier] .reversi-disc.disc-0{background:linear-gradient(145deg,#476880,#16202d);border-color:#a0dfff;}
#main[data-orbit-pieces=glacier] .checker.white,#main[data-orbit-pieces=glacier] .reversi-disc.disc-1{background:linear-gradient(145deg,#e0f4ff,#a0dfff);border-color:#476880;}
#main[data-orbit-pieces=dune] .checker,#main[data-orbit-pieces=dune] .reversi-disc.disc-0{background:linear-gradient(145deg,#776049,#16202d);border-color:#e5c784;}
#main[data-orbit-pieces=dune] .checker.white,#main[data-orbit-pieces=dune] .reversi-disc.disc-1{background:linear-gradient(145deg,#f5e3b6,#e5c784);border-color:#776049;}
#main[data-orbit-pieces=botanical] .checker,#main[data-orbit-pieces=botanical] .reversi-disc.disc-0{background:linear-gradient(145deg,#486445,#16202d);border-color:#b3d788;}
#main[data-orbit-pieces=botanical] .checker.white,#main[data-orbit-pieces=botanical] .reversi-disc.disc-1{background:linear-gradient(145deg,#e0ecc8,#b3d788);border-color:#486445;}
#main[data-orbit-pieces=synthwave] .checker,#main[data-orbit-pieces=synthwave] .reversi-disc.disc-0{background:linear-gradient(145deg,#573e82,#16202d);border-color:#e4a0ff;}
#main[data-orbit-pieces=synthwave] .checker.white,#main[data-orbit-pieces=synthwave] .reversi-disc.disc-1{background:linear-gradient(145deg,#efd5ff,#e4a0ff);border-color:#573e82;}
