diff --git a/BUILD_INFO.txt b/BUILD_INFO.txt index 13b3c8a5..a6fb650c 100644 --- a/BUILD_INFO.txt +++ b/BUILD_INFO.txt @@ -1,3 +1,74 @@ +REM-Client incremental navigation update (64-bit) +date: 2026-11-14T20:11:51+01:00 +source: 4e10c632 (main); committed source matches the validated incremental build inputs +source files: src/freelancer/Client/rem_ui_navmap.cpp, src/freelancer/Client/rem_navmap_detail.h, assets/remui/navmap.rml +source fingerprint (SHA-256, ordered path/NUL/content/NUL): 52e85b91443f474ae081e7107c5aa977cc4d45e344b1fd4d4e2a2cbf5c63b8c7 +change: reopen navigation in the player's current system; ordered routes including ship-to-first-target leg, numbered next/destination markers, directional pulses, off-screen target bearing and route fit; do not bridge foreign-system route gaps; refresh moved targets on all coordinates +files: EXE/Freelancer.exe, EXE/remui/navmap.rml +build: Release|x64 selected compilation of rem_ui_navmap.cpp/rem_navmap_models.cpp and executable relink; OK (existing float-conversion warnings) +validation: 18 portable WorldPos/navmap tests passed; 6 isolated production route-construction cases passed; 21 native RmlUi layout cases at 720p/1080p/1440p passed without parser/binding warnings; source/deployed hashes match +runtime: REM-LOCAL uses this checkout directly; no game launch; reopening, waypoint interaction, animated appearance and the prior header-stripe fix still need in-game confirmation +SHA-256 EXE/Freelancer.exe: 4cadcd8d08d3f66b7224dc738233b9ec8d7ad39c4643ddd904163f59362af761 +SHA-256 EXE/remui/navmap.rml: eab11f3c3a23acf9e191c4b9c74511aba6d13bddd09c6cc984df9b827f9afa19 + +Previous deployment record: +REM-Client incremental UI renderer update (64-bit) +date: 2026-11-14T16:05:50+01:00 +source: 10ceb4ab + existing uncommitted navmap improvements and UI texture-state fix +source files: src/freelancer/Client/rem_ui_render.cpp, src/freelancer/Client/rem_ui_render.h +source fingerprint (SHA-256, ordered path/NUL/content/NUL): b77c8fb20f7d4326bf2018e6d39aad87b9e7b59dfaa0672662b24759d60df195 +change: isolate RmlUi from map/model texture transforms, generated coordinates, result routing and extra texture stages; restore all modified states after the UI pass +files: EXE/Freelancer.exe +build: Release|x64 selected recompilation of rem_ui_render.cpp and rem_ui_host.cpp, then executable relink; OK +validation: isolated mock-pipeline test using production Begin/End bodies reproduces inherited-state failure before the fix; both dirty-material and plain-material scenarios pass after the fix, including exact restoration; source/deployed binary hashes match +runtime: REM-LOCAL uses this checkout directly; game not launched; reported white header stripe near the system-to-sector zoom transition still needs in-game confirmation +SHA-256 EXE/Freelancer.exe: 7e7f757bcc804ae8e1aa1abd265182a6f9257be08df71bf19191ac737ba26ba3 + +Previous deployment record: +REM-Client deployment (64-bit) +date: 2026-11-14T15:27:51+01:00 +source: 10ceb4ab (main) + uncommitted galaxy and navmap improvements +source files: src/freelancer/Client/rem_ui_navmap.cpp, src/freelancer/Client/rem_navmap_models.cpp, src/freelancer/Client/rem_navmap_models.h, src/freelancer/Client/rem_navmap_detail.h, assets/remui/navmap.rml, assets/remui/img/galaxy-dust.png +source fingerprint (SHA-256, ordered path/NUL/content/NUL): 85a1a3a0903cbaeb2521f0b67b644e983cf1d361067e625fb58efb78f68ae338 +change: body-sized picking and selection rings; scoped search; breadcrumbs and view controls; label modes and map layers; reorganized scrolling sidebar; bounded foreign-system model previews +files: EXE/Freelancer.exe, EXE/remui/navmap.rml, EXE/remui/img/galaxy-dust.png +build: Release|x64 freelancer.vcxproj and dependencies OK; final selected compilation of rem_ui_navmap.cpp/rem_navmap_models.cpp and full executable relink OK +validation: 17 WorldPos/navmap tests passed; 15 native RmlUi layout scenarios passed at 720p/1080p/1440p without parser/data-binding warnings; deployed hashes match build/source +runtime: REM-LOCAL launcher uses this checkout directly; game not launched for this update; GPU appearance, interaction and model-loading frame times remain to be checked in-game +SHA-256 EXE/Freelancer.exe: bb5eda6494528a92c7c0d6d3653d3cb8357c68878b8973fc380bdd703e6dc542 +SHA-256 EXE/remui/navmap.rml: e8bdb8d66f4f6d44ecaf3650094bf44b07eb95379d8ff0e38311e18960413d3f +SHA-256 EXE/remui/img/galaxy-dust.png: 280b7c06169a30a9b4c43b2ea041a7bb4a69e5e7e1e19db3aa18e0b391ee56f5 + +Previous deployment record: +REM-Client deployment (64-bit) +date: 2026-11-14T13:30:48+01:00 +source: 10ceb4ab (main) + uncommitted galaxy-map and system-map model changes +source files: src/freelancer/Client/rem_navmap_models.cpp, src/freelancer/Client/rem_navmap_models.h, src/freelancer/Client/rem_navmap_detail.h, src/freelancer/Client/rem_ui_navmap.cpp, assets/remui/navmap.rml, assets/remui/img/galaxy-dust.png +source fingerprint (SHA-256, ordered path/NUL/content/NUL): 505481306ec6a43065b7b2a3a5c966f429d4ded63131df21a6963632891f0892 +change: show live textured models at map scale; fix icon overlay, share pixel threshold and fit camera depth to large planets and the own ship +files: EXE/Freelancer.exe, EXE/remui/navmap.rml +build: Release|x64 freelancer.vcxproj and dependencies, MSVC/MSBuild under Wine; OK +validation: 16 world-position/navmap tests passed; RML structure checked; source/deployed SHA-256 hashes match +runtime: game was running during deployment; atomic file replacement, restart needed; in-game appearance not yet checked +SHA-256 EXE/Freelancer.exe: 42d9a7eb843ebed65906358c8cb26d6e4de896ed0ee3ac91378683a35ac34181 +SHA-256 EXE/remui/navmap.rml: bed6afb3aa0ca8eb4d83c14417882559f515916f283b2d92acb7a0351a363a83 + +Previous deployment record: +REM-Client deployment (64-bit) +date: 2026-11-14T11:53:03+01:00 +source: 10ceb4ab (main) + uncommitted galaxy-map changes +source files: src/freelancer/Client/rem_ui_navmap.cpp, assets/remui/navmap.rml, assets/remui/img/galaxy-dust.png +source fingerprint (SHA-256, ordered path/NUL/content/NUL): 2791a53fcc8230dd10d26f22546382ba092b30265a7bf08f28fc5879353b6046 +change: atmospheric galaxy backdrop, spectral star coronas, projected distance rings, uncluttered reference labels and exploration cards +files: EXE/Freelancer.exe, EXE/remui/navmap.rml, EXE/remui/img/galaxy-dust.png +build: Release|x64 freelancer.vcxproj and dependencies, MSVC/MSBuild under Wine; OK +validation: 14 world-position/navmap tests passed; RML structure, image references, data bindings and layer order checked; source/deployed file hashes match +visual: static browser layout preview inspected; actual in-game RmlUi appearance and navigation not yet verified +SHA-256 EXE/Freelancer.exe: 14d9ebd46556b2b57d086c5a7848401a46815e909b0f967279ca88b0e2860e62 +SHA-256 EXE/remui/navmap.rml: ea3fc4a764adfb97fb31239970905c861a280a10ddc7d0c87c3a2adbd0cc6d71 +SHA-256 EXE/remui/img/galaxy-dust.png: 280b7c06169a30a9b4c43b2ea041a7bb4a69e5e7e1e19db3aa18e0b391ee56f5 + +Previous deployment record: REM-Client deployment (64-bit) date: 2026-11-14T11:30:48+01:00 source: 10ceb4ab (main); committed source matches the validated build fingerprint diff --git a/EXE/Freelancer.exe b/EXE/Freelancer.exe index c1a3d42c..f2838c26 100755 Binary files a/EXE/Freelancer.exe and b/EXE/Freelancer.exe differ diff --git a/EXE/remui/img/galaxy-dust.png b/EXE/remui/img/galaxy-dust.png new file mode 100644 index 00000000..aa62864d Binary files /dev/null and b/EXE/remui/img/galaxy-dust.png differ diff --git a/EXE/remui/navmap.rml b/EXE/remui/navmap.rml index 95394993..d0ef4b1b 100644 --- a/EXE/remui/navmap.rml +++ b/EXE/remui/navmap.rml @@ -29,7 +29,28 @@ #map.revealed { background-color: #03070d00; } /* REM: pixel-independent sector background, below all markers and non-interactive. */ #sector-detail { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; } - .side { flex: 1; margin: 0 2dp 2dp 0; padding: 18dp; decorator: ninepatch(fbr, fbr-i); display: flex; flex-direction: column; min-width: 0; } + .side { flex: 1; margin: 0 2dp 2dp 0; padding: 18dp; decorator: ninepatch(fbr, fbr-i); display: flex; flex-direction: column; min-width: 0; min-height: 0; } + /* REM: fixed navigation above a scrollable task panel; secondary tools stay compact. */ + .side-scroll { flex: 1; min-height: 0; overflow-y: auto; padding-right: 5dp; } + .crumbs { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; margin-bottom: 8dp; font-size: 12dp; color: #8197ad; } + .crumb { color: #5cc8f0; padding: 2dp 3dp; cursor: pointer; } + .crumb:hover { color: #f2b13c; } + .crumb.current { color: #dbe6f0; } + .search-label { font-size: 12dp; color: #8197ad; margin: 6dp 0 4dp; } + .section-toggle { display: flex; flex-direction: row; align-items: center; padding: 9dp 10dp; background-color: #122033; border-bottom: 1dp #24405c; cursor: pointer; } + .section-toggle:hover { color: #5cc8f0; } + .section-toggle .title { flex: 1; font-family: "Saira SemiCondensed"; font-weight: bold; letter-spacing: 1dp; } + .section-toggle .count { color: #8197ad; margin-right: 8dp; } + .filter-panel { padding: 8dp; background-color: #0d1622; margin-bottom: 8dp; } + .filter-row { display: flex; flex-direction: row; flex-wrap: wrap; } + .filter-row .tl { margin: 3dp; padding: 4dp 7dp; font-size: 12dp; } + .legend { border-top: 1dp #24405c; margin-top: 8dp; padding-top: 8dp; color: #8197ad; font-size: 12dp; line-height: 1.6; } + .legend .selected { color: #f2b13c; } + .legend .ship { color: #5cc8f0; } + .legend .group { color: #6fd08c; } + .legend .gate { color: #b98cf2; } + .legend .hole { color: #ef6a5b; } + .pcard .size { font-family: "IBM Plex Mono"; color: #8197ad; font-size: 11dp; margin-bottom: 8dp; } .tbar { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-start; margin-bottom: 10dp; } .tbar .btn { display: block; margin: 0 6dp 6dp 0; } .sysname { font-family: "Saira SemiCondensed"; font-weight: 700; font-size: 24dp; letter-spacing: 2dp; margin-bottom: 8dp; } @@ -91,10 +112,21 @@ .hit .mk { margin-left: 6dp; padding: 0 6dp; font-size: 11dp; color: #8197ad; border: 1dp #24405c; border-radius: 2dp; } .hit .mk:hover { color: #f2b13c; border-color: #f2b13c; } .hit .mk.del:hover { color: #ef6a5b; border-color: #ef6a5b; } - .waypoint .s { left: -7dp; top: -7dp; width: 14dp; height: 14dp; border: 2dp #f2b13c; border-radius: 2dp; } - .waypoint .lbl, .bestpath .lbl { left: -4dp; top: -7dp; font-family: "IBM Plex Mono"; font-size: 10dp; color: #f2b13c; } - .bestpath .s { left: -6dp; top: -6dp; width: 12dp; height: 12dp; border: 2dp #5cc8f0; border-radius: 6dp; } + /* REM: numbered route markers stay readable over real planet/station models. */ + .waypoint .s { left: -12dp; top: -12dp; width: 20dp; height: 20dp; border: 2dp #f2b13c; border-radius: 4dp; background-color: #0d1622; } + .waypoint .lbl, .bestpath .lbl { width: 28dp; text-align: center; font-family: "IBM Plex Mono"; font-size: 11dp; font-weight: bold; color: #f2b13c; } + .bestpath .s { left: -10dp; top: -10dp; width: 16dp; height: 16dp; border: 2dp #5cc8f0; border-radius: 10dp; background-color: #0d1622; } .bestpath .lbl { color: #5cc8f0; } + .mi.route-next .s { border-color: #fff0c2; background-color: #493718; } + .mi.route-end .s { border-width: 3dp; margin: -1dp; } + .route-tag { position: absolute; left: 17dp; top: -9dp; padding: 2dp 5dp; background-color: #0d1622; color: #f2b13c; font-size: 10dp; white-space: nowrap; pointer-events: none; } + .route-card { padding: 10dp 12dp; margin-bottom: 10dp; border-left: 3dp #f2b13c; background-color: #1f2935; } + .route-card .name { color: #fff0c2; font-weight: bold; } + .route-card .detail { color: #b9cbe0; font-size: 12dp; margin: 5dp 0 8dp; } + .route-card .btn { display: block; margin: 0; text-align: center; } + .route-edge { position: absolute; width: 28dp; height: 28dp; margin: -14dp 0 0 -14dp; border: 1dp #f2b13c; border-radius: 14dp; background-color: #0d1622; cursor: pointer; } + .route-edge .arrow { position: absolute; left: 9dp; top: 8dp; width: 0; height: 0; border-left: 10dp #fff0c2; border-top: 6dp transparent; border-bottom: 6dp transparent; transform-origin: 5dp 6dp; } + .group .s { left: -4dp; top: -4dp; width: 8dp; height: 8dp; border-radius: 4dp; background-color: #7cf27c; } .mi.sel .s { border-color: #f2b13c; } .sel .ring2 { position: absolute; left: -12dp; top: -12dp; width: 20dp; height: 20dp; border: 1dp #f2b13c; border-radius: 12dp; } @@ -110,7 +142,12 @@ .ln.jump { border-top: 2dp #3d6d96; } .ln.lane { border-top: 3dp #2f6d8f; } .ln.route { border-top: 3dp #5cc8f0; } - .ln.waypath { border-top: 3dp #f2b13c; } + .ln.waypath { border-top: 2dp #dba64c; } + .ln.wayactive { border-top: 3dp #ffd47a; } + .ln.routeactive { border-top: 3dp #b7eaff; } + .ln.route .ra, .ln.routeactive .ra, .ln.waypath .ra, .ln.wayactive .ra { position: absolute; left: 50%; top: -6dp; width: 0; height: 0; border-left: 7dp #cfe6f8; border-top: 4dp transparent; border-bottom: 4dp transparent; } + .ln.waypath .ra, .ln.wayactive .ra { border-left-color: #ffd47a; } + .ln.waypath .lp, .ln.wayactive .lp { background-color: #fff0c2; } .ln.hole { border-top: 2dp #ef6a5b90; } /* REM nav map (step 5): the sector view - each visited system's chart at its true size (at least 10 dp) */ .sshape { position: absolute; border: 1dp #5cc8f080; background-color: #5cc8f00a; } @@ -192,7 +229,8 @@ once the window stands */ #map.own { background-color: #03070d; } #map.own.revealed { background-color: #03070d00; } - #map.own .real .s { opacity: 0; } + /* REM: outrank the generic .own .mi .s below, including the planet's opaque icon. */ + #map.own .mi.real .s { opacity: 0; } /* REM nav map (step 4): the chart's shape and edge are drawn under the box (rem_navmap_models DrawChartMask: a square for Sirius, a circle for Sol); a square chart has its A..H / 1..8 again (a round one has none) */ #map.own .ln { display: block; } @@ -237,43 +275,60 @@ border-top-color: #7cf27c; border-bottom-color: #7cf27c55; } #map.own .mi .lbl { color: #c9d9ea; font-size: 12dp; } #map.own .planet .lbl, #map.own .sun .lbl { left: 14dp; top: -9dp; font-size: 13dp; color: #e6f0fa; } - /* REM nav map (step 6): the galaxy view - a dark sky (the Orion arm's veil), the nearest stars as scenery, each - sector as its main star (colour by spectral type; Sirius with its companion on its orbit), a ring of its - systems (the discovered ones lit), the distance between the sectors; the Milky Way small in the corner */ - #map.galaxyview, #map.galaxyview.revealed, #map.galaxyview.own.revealed, #map.plainsec, #map.plainsec.revealed, #map.plainsec.own.revealed { background-color: #02040a; - decorator: radial-gradient(circle at 70% 85%, #1a2c5238 0%, #0b142a20 40%, #02040a00 75%); } + /* REM: atmospheric image beneath sharp, animated geometry stars. No unsupported gradient decorators. */ + #map.galaxyview, #map.galaxyview.revealed, #map.galaxyview.own.revealed, + #map.plainsec, #map.plainsec.revealed, #map.plainsec.own.revealed { background-color: #030914; } + .galaxy-art { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0.72; pointer-events: none; } + .galaxy-caption { position: absolute; left: 24dp; top: 22dp; pointer-events: none; } + .galaxy-caption .eyebrow { font-family: "IBM Plex Mono"; font-size: 10dp; letter-spacing: 3dp; color: #81afca; } + .galaxy-caption .heading { font-family: "Saira SemiCondensed"; font-size: 23dp; font-weight: 700; letter-spacing: 2dp; color: #dceafa; margin-top: 3dp; } + .galaxy-caption .sub { font-size: 12dp; color: #8197ad; margin-top: 2dp; } + .galaxy-key { position: absolute; left: 214dp; bottom: 52dp; color: #8197ad; font-size: 11dp; pointer-events: none; } + .galaxy-key .lit { color: #9cd7ef; } #map.galaxyview .ln, #map.galaxyview .mi .s, #map.galaxyview.own .mi .s { display: block; opacity: 1; } #map .mi .b2, #map .mi .ring3 { display: none; } - #map .gstar .s { left: -2dp; top: -2dp; width: 4dp; height: 4dp; border-radius: 2dp; background-color: #cfe0f0; } - #map .gstar .lbl { left: 7dp; top: -7dp; font-size: 11dp; color: #6f8296; } - #map .gsector .s { left: -12dp; top: -12dp; width: 24dp; height: 24dp; border-radius: 12dp; border-width: 0; background-color: #00000000; - decorator: radial-gradient(circle at 50% 50%, #ffffff 0%, #fff6c8 16%, #f2c94cd0 32%, #f2a93c50 58%, #f2a93c00 100%); } - #map .gsector.sA .s, #map .gsector.sB .s { decorator: radial-gradient(circle at 50% 50%, #ffffff 0%, #e8f4ff 18%, #9cc8ffd8 34%, #5c8cf050 60%, #5c8cf000 100%); } - #map .gsector.sM .s, #map .gsector.sK .s { decorator: radial-gradient(circle at 50% 50%, #ffffff 0%, #ffd9b0 16%, #f28c4cd0 32%, #e0603c50 58%, #e0603c00 100%); } - #map .gsector .lbl { font-family: "Saira SemiCondensed"; font-weight: 700; font-size: 18dp; letter-spacing: 2dp; color: #e6f0fa; + #map.galaxyview .gstar .s { left: -1.5dp; top: -1.5dp; width: 3dp; height: 3dp; border-radius: 2dp; background-color: #b7c9df; } + #map.galaxyview .gstar .lbl { left: 7dp; top: -7dp; font-size: 11dp; color: #8195ad; font-effect: shadow(1dp 1dp #030914); } + #map.galaxyview .gsector .s { width: 0; height: 0; border-width: 0; background-color: #00000000; } + #map.galaxyview .gsector sunglow { left: -27dp; top: -27dp; width: 54dp; height: 54dp; } + #map.galaxyview .gsector .lbl { font-family: "Saira SemiCondensed"; font-weight: 700; font-size: 20dp; letter-spacing: 2dp; color: #e6f0fa; font-effect: shadow(1dp 1dp #03070d); } - #map .gsector.here .lbl { color: #9df29d; } - #map .gsector.binary .b2 { display: block; position: absolute; left: 0; top: 0; width: 0; height: 0; animation: 14s infinite linear spin; } - #map .gsector .b2 .bb { position: absolute; left: 20dp; top: -3dp; width: 6dp; height: 6dp; border-radius: 3dp; background-color: #ffffff; - decorator: radial-gradient(circle at 50% 50%, #ffffff 0%, #dbeaff 50%, #9cc8ff00 100%); } - #map .gsector.here .ring3 { display: block; position: absolute; left: -46dp; top: -46dp; width: 88dp; height: 88dp; border-radius: 46dp; - border: 2dp #7cf27c; animation: 1.6s infinite alternate pulse; } - #map .gdot .s { left: -2dp; top: -2dp; width: 4dp; height: 4dp; border-radius: 2dp; background-color: #3d5a78; } - #map .gdot.on .s { background-color: #8fdcff; } - #map .gdist .lbl { width: 60dp; text-align: center; font-family: "IBM Plex Mono"; font-size: 12dp; color: #8fb8d8; } - #map .ln.gline { border-top: 1dp #8fb8d870; } - .ginset { position: absolute; left: 10dp; bottom: 10dp; width: 180dp; height: 180dp; border: 1dp #24405c; background-color: #02040ae0; } - .ginset img { position: absolute; left: 0; top: 0; width: 180dp; height: 180dp; } - .ginset .ghere { position: absolute; left: 83dp; top: 125dp; width: 10dp; height: 10dp; border-radius: 6dp; border: 2dp #7cf27c; - animation: 1.2s infinite alternate pulse; } - .ginset .gcap { position: absolute; left: 0; right: 0; bottom: 4dp; text-align: center; font-size: 11dp; letter-spacing: 1dp; color: #9df29d; + #map.galaxyview .gsector.here .lbl { color: #b3e8d5; margin-left: 10dp; } + #map.galaxyview .gsector.binary .b2 { display: block; position: absolute; left: 0; top: 0; width: 0; height: 0; animation: 30s infinite linear spin; } + #map.galaxyview .gsector .b2 .bb { position: absolute; left: 22dp; top: -3dp; width: 5dp; height: 5dp; border-radius: 3dp; + background-color: #e1efff; border: 1dp #8fbbeb80; } + #map.galaxyview .gsector.here .ring3 { display: block; position: absolute; left: -49dp; top: -49dp; width: 96dp; height: 96dp; border-radius: 50dp; + border: 1dp #89d8bd70; } + #map.galaxyview .gdot .s { left: -1.5dp; top: -1.5dp; width: 3dp; height: 3dp; border-radius: 2dp; background-color: #3a4f68; } + #map.galaxyview .gdot.on .s { background-color: #9cd7ef; } + #map.galaxyview .gdist .lbl { width: 60dp; padding: 2dp 3dp; text-align: center; font-family: "IBM Plex Mono"; font-size: 11dp; color: #a0bacf; + background-color: #030914c0; } + #map.galaxyview .sshape { border: 1dp #7ba6ce1c; background-color: transparent; pointer-events: none; } + #map.galaxyview .gmeasure .lbl { font-family: "IBM Plex Mono"; font-size: 10dp; color: #63809a; background-color: #030914b0; padding: 1dp 4dp; } + #map .ln.gline { border-top: 1dp #8fb8d84c; } + .ginset { position: absolute; left: 16dp; bottom: 16dp; width: 180dp; height: 180dp; border: 1dp #42627b70; background-color: #02040ac0; pointer-events: none; } + .ginset img { position: absolute; left: 0; top: 0; width: 180dp; height: 180dp; opacity: 0.8; } + .ginset .ghere { position: absolute; left: 83dp; top: 125dp; width: 8dp; height: 8dp; border-radius: 5dp; border: 1dp #b3e8d5; } + .ginset .gcap { position: absolute; left: 0; right: 0; bottom: 7dp; text-align: center; font-size: 10dp; letter-spacing: 2dp; color: #b3e8d5; text-transform: uppercase; } - .ginset .gname { position: absolute; left: 0; right: 0; top: 4dp; text-align: center; font-size: 11dp; letter-spacing: 2dp; color: #8197ad; + .ginset .gname { position: absolute; left: 0; right: 0; top: 7dp; text-align: center; font-size: 10dp; letter-spacing: 2dp; color: #8197ad; text-transform: uppercase; } - .gcard { padding: 12dp 14dp; margin-bottom: 8dp; background-color: #5cc8f00c; border-left: 3dp #8fb8d8; } - .gcard.own { border-left-color: #7cf27c; } - .gcard .n { font-family: "Saira SemiCondensed"; font-weight: 700; font-size: 19dp; letter-spacing: 1dp; } - .gcard .k { font-size: 12dp; color: #8197ad; margin: 2dp 0 8dp 0; } + .galaxy-section { margin: 12dp 0 8dp 0; font-size: 11dp; letter-spacing: 2dp; color: #8197ad; text-transform: uppercase; } + .galaxy-cards { max-height: 380dp; overflow-y: auto; } + .gcard { padding: 14dp 16dp; margin-bottom: 10dp; background-color: #091626d9; border: 1dp #42627b60; border-left: 2dp #7098c0; } + .gcard.own { border-left-color: #89d8bd; } + .gcard .head { display: flex; align-items: center; margin-bottom: 10dp; } + .gcard .star { position: relative; width: 44dp; height: 44dp; margin-right: 10dp; } + .gcard sunglow { left: -4dp; top: -4dp; width: 52dp; height: 52dp; pointer-events: none; } + .gcard .n { font-family: "Saira SemiCondensed"; font-weight: 700; font-size: 24dp; letter-spacing: 1dp; } + .gcard .type { font-family: "IBM Plex Mono"; font-size: 10dp; color: #8197ad; } + .gcard .k { font-size: 12dp; color: #9bb1c7; margin-bottom: 10dp; } + .gcard.own .k { color: #b3e8d5; } + .gcard .survey { font-size: 11dp; color: #8197ad; margin-bottom: 6dp; } + .gcard .track { height: 2dp; background-color: #253b50; margin-bottom: 14dp; } + .gcard .fill { height: 2dp; background-color: #9cc8ff; } + .gcard.own .fill { background-color: #89d8bd; } + .gcard .btn { display: block; text-align: center; padding: 6dp 10dp; margin: 0; } /* the sector view has no models: the ship stays the green arrow there */ #map.sectorview.own .player .s { left: -8dp; top: -8dp; width: 0; height: 0; border-radius: 0; border-width: 0; border-left: 8dp #00000000; border-right: 8dp #00000000; border-bottom: 16dp #7cf27c; } @@ -292,6 +347,8 @@
+ 
