PageSourceSearch

https://data.tgs.com/395.ab868a0ca58a3f80.js

js tgs.com collected 2026-10-02 03:34:40 UTC 50,223 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkMarketPlace=self.webpackChunkMarketPlace||[]).push([[395],{3395(ne,p,c){c.d(p,{UserGuideComponent:()=>ie});var s=c(5802),l=c(9769),d=c(9417);const u=JSON.parse('[{"id":"basemap-selection","section":"Bottom Right Sidebar","title":"Basemap Selection","featureOverview":"Change the background map style to suit your viewing preferences.","navigationPath":"Right-side Overlay Toolbar -> Basemap Icon","steps":[{"text":"Locate and click the \'Basemap\' icon on the right-side overlay toolbar.","image":"assets/images/user-guide/basemaps.jpg"},{"text":"A menu will appear with available basemap options."},{"text":"Select the desired basemap to update the background map style."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/basemaps.jpg"},{"id":"reset-zoom","section":"Bottom Right Sidebar","title":"Reset Zoom","featureOverview":"Return the map to its default global extent.","navigationPath":"Right-side Overlay Toolbar -> Reset Zoom Icon","steps":[{"text":"Click the \'Reset Zoom\' icon (extent box symbol) on the map overlay.","image":"assets/images/user-guide/image13.png"},{"text":"The map will immediately zoom out to show the default global view."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image13.png"},{"id":"map-interactions-zoom-in-zoom-out-select","section":"Bottom Right Sidebar","title":"Map Interactions (Zoom In, Zoom Out, Select)","featureOverview":"Interact directly with the map interface.","navigationPath":"Right-side Overlay Toolbar -> Zoom In Icon","steps":[{"text":"Zoom In: Click the \'+\' icon on the right side overlay, or use your mouse wheel.","image":"assets/images/user-guide/image11.png"},{"text":"Zoom Out: Click the \'-\' icon on the right side overlay."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image11.png"},{"id":"import-map-layer","section":"Bottom Right Sidebar","title":"Import Map Layer","featureOverview":"Add custom external layers via a URL map service or Shapefile.","navigationPath":"Right-side Overlay Toolbar -> \'Import Map Layer\u2019 Icon","steps":[{"text":"Click the \'Import Map Layer\' icon on the right-side overlay toolbar.","image":"assets/images/user-guide/import1.jpg"},{"text":"In the \'URL\' tab, enter the Layer URL (OGC service).","image":"assets/images/user-guide/image29.png"},{"text":"Click \'Next\'."},{"text":"Choose \'None\' or \'Basic\' authentication, entering credentials if required."},{"text":"Edit the Layer Name."},{"text":"Click \'Import\' to add the layer to the map."},{"text":"Newly added layers will be shown in Imported tab.","image":"assets/images/user-guide/import2.jpg"},{"text":"To import a Shapefile, switch to the \'Shapefile\' tab, select a .zip file containing your shapefile, specify a Layer Name and color, then click \'Next\'.","image":"assets/images/user-guide/import3.jpg"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image29.png"},{"id":"download-shapefiles","section":"Bottom Right Sidebar","title":"Download Shapefiles","description":[""],"additionalImages":[],"image":"assets/images/user-guide/image23.png","subSections":[{"title":"Global Download Shapefile","featureOverview":"Download map data in the widely supported ESRI shapefile format globally.","navigationPath":"Right-side Overlay Toolbar -> Download Shapefile Icon","steps":[{"text":"Locate and click the Download Shapefile icon.","image":"assets/images/user-guide/image23.png"},{"text":"The system will process the spatial data based on your current map view and selections."},{"text":"A ZIP archive containing the shapefile components will automatically download to your computer."}]},{"title":"Individual Download Shapefile","featureOverview":"Download map data in the widely supported ESRI shapefile format for specific surveys.","navigationPath":"Map View -> Survey List -> More Options -> Download Shapefile","steps":[{"text":"Navigate to the Map View within the application."},{"text":"Locate the specific survey you are interested in.","image":"assets/images/user-guide/image24.png"},{"text":"Click the three dots (More Options) next to the survey."}
1,{"text":"Choose the Download Shapefile option from the menu."},{"text":"A ZIP archive containing the shapefile components for that specific survey will automatically download to your computer."}]}],"featureOverview":"The Download Shapefiles feature allows users to export map data in the widely supported ESRI shapefile format. This functionality packages spatial data into a downloadable ZIP archive containing necessary .shp, .shx, .dbf, and .prj files, making it easy to integrate with standard GIS applications. There are two types of shapefile downloads available: Global and Individual.\\nFeature available only to Data Verse subscribers."},{"id":"share","section":"Bottom Right Sidebar","title":"Share","featureOverview":"Share a specific map view, survey, or project with other users via a link.","navigationPath":"Right-side Overlay Toolbar -> Share Icon","steps":[{"text":"Navigate to the desired view, survey, or project you wish to share."},{"text":"Click the \'Share\' icon located in the right-side overlay toolbar.","image":"assets/images/user-guide/shareglobal.jpg"},{"text":"A link will be generated and copied to your clipboard, or a pop-up will display the link."},{"text":"Share this link with other users to direct them to the same view."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/shareglobal.jpg"},{"id":"sign-in","section":"Top Right Sidebar","title":"Sign In","featureOverview":"Log into the application to access premium features.","navigationPath":"Top Header -> \'Sign In\' or Profile Icon","steps":[{"text":"Click the \'Profile\' or \'Sign In\' option in the top right header.","image":"assets/images/user-guide/image14.png"},{"text":"You will be redirected to the secure Okta/SSO login page."},{"text":"Enter your credentials to authenticate and return to the application."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image14.png"},{"id":"access-control","section":"Top Right Sidebar","title":"Access Control","featureOverview":"Manage user access and permissions for Customer admins.\\nFeature available only to Data Verse subscribers.","navigationPath":"Top Header -> Profile Icon -> Access Control","steps":[{"text":"Navigate to the Access Control section from the main navigation menu or profile dropdown.","image":"assets/images/user-guide/accesscontrol.jpg"},{"text":"It will redirect to OKTA admin portal for customer admin where admin can add/modify users belong to their organization"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/accesscontrol.jpg"},{"id":"cdu","section":"Top Right Sidebar","title":"Client Delivery Utility (CDU)","featureOverview":"Client Delivery Utility, an interactive tool designed to enable customers to retrieve entitled products.\\nFeature available only to Data Verse subscribers.","navigationPath":"Top Header -> Profile Icon -> Delivery Utility","steps":[{"text":"Click on Delivery Utility menu from profile options","image":"assets/images/user-guide/cdu.jpg"},{"text":"Client Delivery Utility will open in new tab","image":"assets/images/user-guide/cdutool.jpg"},{"text":"Please use the Search area to navigate through the available orders. The search functionality includes various metadata fields, such as project name, product name, and date. Press the Search icon to initiate search","image":"assets/images/user-guide/cdusearch.jpg"},{"text":"Utilize the Refresh icon to update the available products and adjust the number of products displayed on the current page. Navigate between the available pages using the provided icons.","image":"assets/images/user-guide/cdurefresh.jpg"},{"text":"When a product is available for download, its corresponding icon will be highlighted in blue. ","image":"assets/images/user-guide/cdudownload1.jpg"},{"text":"Select the desired product(s) and click the Download icon. ","image":"assets/images/user-guide/cdudownload2.jpg"},{"text":"For products that contain multiple files (e.g., 2D products), click the expanding icon to display all available files, and then select the specific file(s) you wish to download ","image":"assets/images/user-guide/cdudownload3.jpg"},{"text":"Select the download option that best suits your requirements from the available functions. The options include a direct browser download and the generation of a script containing presigned URLs for all selected files. ","image":"assets/images/user-guide/cdudownload6.jpg"},{"text":"Pre-signed URL(s)","image":"assets/images/user-guide/cdudownload5.jpg"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/cdutool.jpg"},{"id":"data-layers","section":"Top Right Sidebar","title":"Data Layers","featureOverview":"The Data Layers feature provides a comprehensive list of survey classifications and block layers. Users can toggle these layers on or off to control the
1ir visibility simultaneously in both the data list and the interactive map. Additionally, layers can be reordered, which immediately updates their drawing order on the map display.","navigationPath":"Right-side Overlay Toolbar -> Data Layer Icon","steps":[{"text":"Click the down arrow next to \u2018Data Layers\'","image":"assets/images/user-guide/image12.png"},{"text":"The Data Layers feature provides a comprehensive list of survey classifications and block layers. Users can toggle these layers on or off to control their visibility simultaneously in both the data list and the interactive map. Additionally, layers can be reordered, which immediately updates their drawing order on the map display"},{"text":"Check or uncheck survey classifications and block layers to show or hide them in the list and map."},{"text":"Reorder layers to reflect changes in the map."}],"description":[""],"additionalImages":[],"image":"assets/images/user-guide/image12.png"},{"id":"surveys","section":"Left Sidebar","title":"Surveys","featureOverview":"View available surveys on the map. Entitled surveys will be marked with a green icon. Upon selecting a specific survey, users can access detailed information, including the survey overview, survey parameters, and the well products available within the selected area.","navigationPath":"Left Sidebar -> \'All Surveys\' Tab","steps":[{"text":"Click the \'Surveys\' tab in the left sidebar.","image":"assets/images/user-guide/image1.png"},{"text":"A list of available surveys will appear."},{"text":"Click on a survey item to view its details on the map.","image":"assets/images/user-guide/survey_detail.jpg"},{"text":"The map will center on the selected survey polygon."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image1.png"},{"id":"projects","section":"Left Sidebar","title":"Projects","featureOverview":"View projects associated with a specific survey. Entitled projects will be marked with a green icon indicating percentage of area entitled. Upon selecting a specific project, users can access processing details.","navigationPath":"Left Sidebar -> \'All Surveys\' Tab -> Select a Survey -> \'Projects\'","steps":[{"text":"Select a survey from the survey list."},{"text":"The view switches to the \'Survey Details\' panel."},{"text":"A list of associated projects for the survey will be displayed.","image":"assets/images/user-guide/projects_new.png"},{"text":"Click on a project item to view its details on the map","image":"assets/images/user-guide/project_detail.jpg"},{"text":"Review Processing Parameters.","image":"assets/images/user-guide/project_processingparameters.jpg"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/projects_new.png"},{"id":"products","section":"Left Sidebar","title":"Products","featureOverview":"View specific product lines (2D or 3D) within a project.","navigationPath":"Left Sidebar -> \'All Surveys\' Tab -> Select a Survey -> \'Projects\' -> Select a Project -> \'Products\'","steps":[{"text":"From the project list, click on a specific project."},{"text":"Products associated with projects will be shown","image":"assets/images/user-guide/products_new_2.png"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/products_new_2.png"},{"id":"map-highlight","section":"Left Sidebar","title":"Map Highlight","featureOverview":"Visually identify geographic locations by hovering over list items.","navigationPath":"Left Sidebar -> Hover over Survey/Project/Product","steps":[{"text":"Navigate to the \'Surveys\', \'Projects\', or \'Products\' list in the left sidebar.","image":"assets/images/user-guide/image4.png"},{"text":"Move your mouse cursor over a specific item in the list without clicking."},{"text":"Observe the map; the corresponding geographic boundary or line will be temporarily highlighted."},{"text":"Move your mouse away to remove the highlight."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image4.png"},{"id":"regions","section":"Left Sidebar","title":"Regions","featureOverview":"Navigate data geographically by large continental regions.","navigationPath":"Left Sidebar -> \'Regions\' Tab","steps":[{"text":"Click the \'Regions\' tab in the left sidebar."},{"text":"A visual list of regions (with images and survey counts) is displayed.","
1image":"assets/images/user-guide/image5.png"},{"text":"Click on a region card to navigate it.","image":"assets/images/user-guide/image6.png"},{"text":"Click \u2018View Surveys\u2019 will filter survey list and map layers based on region"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image5.png"},{"id":"sub-regions","section":"Left Sidebar","title":"Sub Regions","featureOverview":"Narrow down geographic search to sub-regions.","navigationPath":"Left Sidebar -> \'Regions\' -> Select Region -> Sub Regions","steps":[{"text":"After selecting a Region, the map and list update to show Sub Regions."},{"text":"Click a sub-region to filter data further.","image":"assets/images/user-guide/image7.png"},{"text":"Click \u2018View Surveys\u2019 will filter survey list and map layers based on sub region"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image7.png"},{"id":"country","section":"Left Sidebar","title":"Country","featureOverview":"Filter surveys based on a specific country.","navigationPath":"Left Sidebar -> \'Regions\' -> Select Region -> \'Sub Regions\' -> Select Sub Region -> \'Country\'","steps":[{"text":"Select a sub-region to reveal a list of countries."},{"text":"Click a country name to display surveys confined to that country.","image":"assets/images/user-guide/image8.png"},{"text":"Click \u2018View Surveys\u2019 will filter survey list and map layers based on country"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image8.png"},{"id":"search","section":"Left Sidebar","title":"Search","featureOverview":"Quickly find specific surveys, projects, or products using keywords.","navigationPath":"Left Sidebar -> \'All Surveys\' Tab -> \'Search\u2019 Bar","steps":[{"text":"Locate the search bar at the top header of the application."},{"text":"Enter a keyword related to the survey, project, or product you are looking for.","image":"assets/images/user-guide/Search.jpg"},{"text":"Review the search results displayed in the dropdown."},{"text":"Click on a relevant result to directly navigate to its details on the map."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/Search.jpg"},{"id":"filters","section":"Left Sidebar","title":"Filters","featureOverview":"Filter the map and lists by specific parameters.","navigationPath":"Left Sidebar -> \'Surveys\' Tab -> \'Filters\' Icon","steps":[{"text":"Click the \'Filter\' icon."},{"text":"Adjust \'Acquisition Year\' (From/To) and \'Processing Year\' (From/To) dropdowns.","image":"assets/images/user-guide/image10.png"},{"text":"Click \'Apply\' to update the results."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image10.png"},{"id":"sort-by","section":"Left Sidebar","title":"Sort By","featureOverview":"Order the survey list based on specific criteria.","navigationPath":"Left Sidebar -> \'Surveys\' Tab -> Sort Icon (Up/Down Arrow)","steps":[{"text":"Click the \'Sort\' icon in the search header.","image":"assets/images/user-guide/image9.png"},{"text":"A dropdown menu appears with sorting options."},{"text":"Select \'Processing Year (Newest first)\', \'Processing Year (Oldest first)\', \'Name (A to Z)\', or \'Name (Z to A)\'."},{"text":"The list will instantly reorder based on the selection."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image9.png"},{"id":"map-pin","section":"Left Sidebar","title":"Map Pin","featureOverview":"Drop a pin on the map to retrieve geographical coordinates and identify underlying data.","navigationPath":"Map -> Click","steps":[{"text":"Click on any desired location on the map to drop the pin.","image":"assets/images/user-guide/mappin.jpg"},{"text":"Map Pin will be placed and will list any surveys or data present at that specific point."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/mappin.jpg"},{"id":"entitlement-tab","section":"Left Sidebar","title":"Entitlement Tab","featureOverview":"View only the data that your organization is licensed to access.","navigationPath":"Left Sidebar -> \'Entitled\' Tab","steps":[{"text":"Once logged in, locate the left sidebar tabs."},{"text":"Click the \'Entitled\' tab (indicated by a green checkmark icon).","image":"assets/images/user-guide/image15.png"},{"text":"The list and map will filter to show only data you own."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image15.png"},{"id":"entitled-projects","section":"Left Sidebar","title":"Entitled Projects","featureOverview":"View project details and metadata for data you own.","navigationPath":"Left Sidebar -> \'Entitled\' Tab -> Select Survey ->
1 Project","steps":[{"text":"Open the \'Entitled\' tab."},{"text":"Click on a survey."},{"text":"Entitled Projects will indicate the percentage of entitlement.","image":"assets/images/user-guide/image17.png"},{"text":"Select an Entitled Project from the list."},{"text":"View project metadata such as Status, Project Type, and Description."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image17.png"},{"id":"entitled-products-2d-and-3d","section":"Left Sidebar","title":"Entitled Products (2D and 3D)","featureOverview":"Access the specific deliverables for an entitled project. Entitled products will be marked with a green icon","navigationPath":"Left Sidebar -> \'Entitled\' Tab -> Select Survey -> Select Entitled Project -> \u2018Data Products\' section","steps":[{"text":"Open an Entitled Project."},{"text":"If the selected product is a 2D product, clicking the product opens the Line Details screen.","image":"assets/images/user-guide/entitled_2d.jpg"},{"text":"If the selected product is a 3D product, clicking the product opens a page displaying its details.","image":"assets/images/user-guide/image19.png"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image18.png"},{"id":"ebcdic-viewer","section":"Left Sidebar","title":"EBCDIC Viewer","featureOverview":"View EBCDIC header information for entitled products.\\nFeature available only to Data Verse subscribers","navigationPath":"Left Sidebar -> Select entitled Survey -> Select Entitled Projects -> Select Entitled Products -> EBCDIC Viewer Icon","steps":[{"text":"Navigate to an entitled product that has seismic data.","image":"assets/images/user-guide/ebcdic1.jpg"},{"text":"Locate the \'EBCDIC Viewer\' icon next to the product."},{"text":"Click the icon to open the EBCDIC header information in a new dialog or view.","image":"assets/images/user-guide/ebcdic2.jpg"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/ebcdic1.jpg"},{"id":"support-documents","section":"Left Sidebar","title":"Support Documents","featureOverview":"View and download technical documentation, including acquisition reports, processing reports, and survey-related supplements. This feature is available exclusively to TGS Data Verse subscribers.","navigationPath":"Left Sidebar -> \'Surveys\' Tab -> Select entitled Survey -> Select Entitled Projects -> Project Details Panel -> \'Support Documents\'","steps":[{"text":"Open an entitled Survey and Project"},{"text":"Scroll down to the \'Support Documents\' accordion panel."},{"text":"Click the \'+\' icon to expand the panel."},{"text":"A table of supported documents will appear. Click on a document name to open or download it.","image":"assets/images/user-guide/image20.png"}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image20.png"},{"id":"order-products","section":"Left Sidebar","title":"Order Products","featureOverview":"Access entitled data products on demand directly from the map interface. This feature is available exclusively to TGS Data Verse subscribers.","navigationPath":"Left Sidebar -> \'Surveys\' Tab -> Select Entitled Survey -> Select Entitled Projects -> \'Order Data Products\' Button","steps":[{"text":"Navigate to an Entitled project."}
1,{"text":"Click the \'Order Data Products\' button.","image":"assets/images/user-guide/image25.png"},{"text":"Select products","image":"assets/images/user-guide/image26.png"},{"text":"Click on Review Order button to review results.","image":"assets/images/user-guide/image27.png"},{"text":"Submit the order."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image25.png"},{"id":"upload-polygon","section":"Left Sidebar","title":"Upload Polygon","featureOverview":"Request custom subsets of entitled data by uploading a user-defined polygon for Cut-on-Demand processing. This feature is available exclusively for entitled data to TGS Data Verse subscribers.","navigationPath":"Survey Details -> Entitled Projects -> \'Order Data Products\' Button -> \'Upload Polygon\' Button","steps":[{"text":"Open an entitled Project (specifically for 3D surveys)."},{"text":"Open an entitled Product."},{"text":"Click the \'Order Data Products\' button."},{"text":"If your subscription include the correct Add-on, click the \'Upload Polygon\' button."},{"text":"A \'Cut on Demand\' dialog will open.","image":"assets/images/user-guide/image28.png"},{"text":"Click \'Select File\' to select the polygon file to be used"},{"text":"Click \'Next\' to proceed to the Review dialog."},{"text":"Verify the area of intersection between your polygon and the selected products and select \'Save\'","image":"assets/images/user-guide/upload_polygon_new.jpg"},{"text":"Confirm the details and submit your cut-on-demand request."},{"text":"Use the \'Edit Polygon\' button if you need to adjust a previously uploaded polygon."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image28.png"},{"id":"preview-tab","section":"Left Sidebar","title":"Preview Tab","featureOverview":"Access and visualize your entitled data using the TGS Visualization tool, available to Data Verse subscribers","navigationPath":"Left Sidebar -> \'Preview\' Tab","steps":[{"text":"In the left sidebar, click the \'Preview\' tab.","image":"assets/images/user-guide/image16.png"},{"text":"Browse surveys and projects marked for preview access."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image16.png"},{"id":"visualization","section":"Left Sidebar","title":"Visualization","featureOverview":"Launch the Visualize tool to display the seismic data for the selected product. This feature is available exclusively to TGS Data Verse subscribers.","navigationPath":"Left Sidebar -> \'Surveys\' Tab -> Select Entitled Survey -> Select Entitled Projects -> Select Entitled Products -> \'Visualize\' Icon","steps":[{"text":"Navigate to Entitled Project which has visualize icon","image":"assets/images/user-guide/image21.png"},{"text":"Navigate to an entitled 2D or 3D product in the products table.","image":"assets/images/user-guide/image22.png"},{"text":"Locate the \'Visualize\' icon (an eye symbol)."},{"text":"Click the icon. If multiple files exist, a \'Files\' dialog will appear; click the specific file name."},{"text":"The Visualizer tool opens in a new browser tab with the selected product loaded."}],"description":[],"additionalImages":[],"image":"assets/images/user-guide/image21.png"}]');var m=c(3394),e=c(5547);const _=["guideContainer"];function h(i,a){if(1&i&&(e.j41(0,"div",12)(1,"h3"),e.EFF(2),e.k0s()()),2&i){const t=e.XpG().$implicit;e.R7$(2),e.JRh(t.name)}}function f(i,a){if(1&i&&e.nrm(0,"img",24),2&i){const t=e.XpG().$implicit,o=e.XpG(4);e.Y8G("alt",e.mNQ(t.title))("src",o.getMainImage(t),e.B4B)}}function v(i,a){1&i&&e.nrm(0,"div",25)}function x(i,a){if(1&i){const t=e.RV6();e.j41(0,"div",15),e.bIt("click",function(){const n=s.eBV(t).$implicit,r=e.XpG(4);return s.Njj(r.selectTopic(n))}),e.j41(1,"div",16),e.DNE(2,f,1,3,"img",17)(3,v,1,0,"div",18),e.k0s(),e.j41(4,"div",19)(5,"h3",20),e.EFF(6),e.k0s(),e.j41(7,"p",21),e.EFF(8),e.k0s(),e.j41(9,"div",22)(10,"span",23),e.EFF(11,"Read more"),e.k0s()()()()}if(2&i){const t=a.$implicit,o=e.XpG(4);e.R7$(2),e.Y8G("ngIf",o.getMainImage(t)),e.R7$(),e.Y8G("ngIf",!o.getMainImage(t)),e.R7$(3),e.JRh(t.title),e.R7$(2),e.JRh(t.featureOverview)}}function b(i,a){if(1&i&&(e.j41(0,"div",13),e.DNE(1,x,12,4,"div",14),e.k0s()),2&i){const t=e.XpG().$implicit;e.R7$(),e.Y8G("ngForOf",t.topics)}}function C(i,a){if(1&i&&(e.qex(0),e.DNE(1,h,3,1,"div",10)(2,b,2,1,"div",11),e.bVm()),2&i){const t=a.$implicit;e.R7$(),e.Y8G("ngIf",t.topics.length>0&&t.name),e.R7$(),e.Y8G("ngIf",t.topics.length>0)}}function w(i,a){if(1&i&&(e.j41(0,"div",26),e.EFF(1),e.k0s()),2&i){const t=e.XpG(2);e.R7$(),e.SpI(' No results found for "',t.searchText,'" ')}}function y(i,a){if(1&i){const t=e.RV6();e.qex(0),e.j41(1,"div",3)(2,"div",4)(3,"h1"),e.EFF(4,"Data Verse User Guide"),e.k0s(),e.j41(5,"p"),e.EFF(6,"Explore the comprehensive guide to the platform, discover features, and learn how to navigate efficiently. "),e.k0s()(),e.j41(7,"div",5)(8,"input",6),e.mxI("ngModelChange",function(n){s.eBV(t);const r=e.XpG();return e.DH7(r.searchText,n)||(r.searchText=n),s.Njj(n)}),e.bIt("ngModelChange",function(){s.eBV(t);const n=e.XpG();return s.Njj(n.onSearch())}),e.k0s()()(),e.j41(9,"div",7),e.DNE(10,C,3,2,"ng-container",8)(11,w,2,1,"div",9),e.k0s(),e.bVm()}if(2&i){const t=e.XpG();e.R7$(8),e.R50("ngModel",t.searchText),e.R7$(2),e.Y8G("ngForOf",t.groupedTopics),e.R7$(),e.Y8G("ngIf",0===t.topics.length)}}function P(i,a){if(1&i){const t=e.RV6();e.j41(0,"div",44)(1,"button",45),e.bIt("click",function(){s.eBV(t);const n=e.XpG(2);return s.Njj(n.previousTopic())}),s.qSk(),e.j41(2,"svg",46),e.nrm(3,"polyline",47),e.k0s(),e.EFF(4," Previous "),e.k0s(),s.joV(),e.j41(5,"button",45),e.bIt("click",function(){s.eBV(t);const n=e.XpG(2);return s.Njj(n.nextTopic())}),e.EFF(6," Next "),s.qSk(),e.j41(7,"svg",46),e.nrm(8,"polyline",48),e.k0s()()()}if(2&i){const t=e.XpG(2);e.R7$(),e.Y8G("disabled",!t.hasPreviousTopic()),e.R7$(4),e.Y8G("disabled",!t.hasNextTopic())}}function O(i,a){if(1&i&&(e.j41(0,"h1"),e.EFF(1),e.k0s()),2&i){const t=e.XpG(2);e.R7$(),e.JRh(t.selectedTopic.title)}}function M(i,a){if(1&i){const t=e.RV6();e.j41(0,"input",49),e.mxI("ngModelChange",function(n){s.eBV(t);const r=e.XpG(2);return e.DH7(r.selectedTopic.title,n)||(r.selectedTopic.title=n),s.Njj(n)}),e.k0s()}if(2&i){const t=e.XpG(2);e.R50("ngModel",t.selectedTopic.title)}}function T(i,a){if(1&i&&(e.j41(0,"p"),e.EFF(1),e.k0s()),2&i){const t=a.$implicit;e.R7$(),e.JRh(t)}}function k(i,a){if(1&i&&(e.j41(0,"div"),e.DNE(1,T,2,1,"p",8),e.k0s()),2&i){const t=e.XpG(3);e.R7$(),e.Y8G("ngForOf",t.selectedTopic.description)}}function S(i,a){if(1&i){const t=e.RV6();e.j41(0,"div",52)(1,"textarea",53),e.mxI("ngModelChange",function(n){const r=s.eBV(t).index,g=e.XpG(4);
1return e.DH7(g.selectedTopic.description[r],n)||(g.selectedTopic.description[r]=n),s.Njj(n)}),e.k0s()()}if(2&i){const t=a.index,o=e.XpG(4);e.R7$(),e.R50("ngModel",o.selectedTopic.description[t])}}function j(i,a){if(1&i&&(e.j41(0,"div")(1,"h3"),e.EFF(2,"Description"),e.k0s(),e.DNE(3,S,2,1,"div",51),e.k0s()),2&i){const t=e.XpG(3);e.R7$(3),e.Y8G("ngForOf",t.selectedTopic.description)("ngForTrackBy",t.trackByIndex)}}function G(i,a){if(1&i&&(e.j41(0,"div",50),e.DNE(1,k,2,1,"div",2)(2,j,4,2,"div",2),e.k0s()),2&i){const t=e.XpG(2);e.R7$(),e.Y8G("ngIf",!t.isEditMode),e.R7$(),e.Y8G("ngIf",t.isEditMode)}}function I(i,a){if(1&i&&(e.j41(0,"p"),e.EFF(1),e.k0s()),2&i){const t=e.XpG(3);e.R7$(),e.JRh(t.selectedTopic.featureOverview)}}function R(i,a){if(1&i){const t=e.RV6();e.j41(0,"textarea",53),e.mxI("ngModelChange",function(n){s.eBV(t);const r=e.XpG(3);return e.DH7(r.selectedTopic.featureOverview,n)||(r.selectedTopic.featureOverview=n),s.Njj(n)}),e.k0s()}if(2&i){const t=e.XpG(3);e.R50("ngModel",t.selectedTopic.featureOverview)}}function E(i,a){if(1&i&&(e.j41(0,"div",54)(1,"h3"),e.EFF(2,"Feature Overview"),e.k0s(),e.DNE(3,I,2,1,"p",2)(4,R,1,1,"textarea",55),e.k0s()),2&i){const t=e.XpG(2);e.R7$(3),e.Y8G("ngIf",!t.isEditMode),e.R7$(),e.Y8G("ngIf",t.isEditMode)}}function D(i,a){if(1&i&&(e.j41(0,"div",59),e.EFF(1),e.k0s()),2&i){const t=e.XpG(3);e.R7$(),e.JRh(t.selectedTopic.navigationPath)}}function F(i,a){if(1&i){const t=e.RV6();e.j41(0,"input",60),e.mxI("ngModelChange",function(n){s.eBV(t);const r=e.XpG(3);return e.DH7(r.selectedTopic.navigationPath,n)||(r.selectedTopic.navigationPath=n),s.Njj(n)}),e.k0s()}if(2&i){const t=e.XpG(3);e.R50("ngModel",t.selectedTopic.navigationPath)}}function U(i,a){if(1&i&&(e.j41(0,"div",56)(1,"h3"),e.EFF(2,"Navigation Path"),e.k0s(),e.DNE(3,D,2,1,"div",57)(4,F,1,1,"input",58),e.k0s()),2&i){const t=e.XpG(2);e.R7$(3),e.Y8G("ngIf",!t.isEditMode),e.R7$(),e.Y8G("ngIf",t.isEditMode)}}function L(i,a){if(1&i&&(e.j41(0,"div",64),e.nrm(1,"img",24),e.k0s()),2&i){const t=e.XpG(),o=t.$implicit,n=t.index,r=e.XpG(4);e.R7$(),e.Y8G("src",o.image,e.B4B)("alt",r.selectedTopic.title+" step "+(n+1)+" illustration")}}function $(i,a){if(1&i&&(e.j41(0,"li")(1,"div",62),e.EFF(2),e.k0s(),e.DNE(3,L,2,2,"div",63),e.k0s()),2&i){const t=a.$implicit;e.R7$(2),e.JRh(t.text),e.R7$(),e.Y8G("ngIf",t.image)}}function N(i,a){if(1&i&&(e.j41(0,"ol"),e.DNE(1,$,4,2,"li",8),e.k0s()),2&i){const t=e.XpG(3);e.R7$(),e.Y8G("ngForOf",t.selectedTopic.steps)}}function V(i,a){if(1&i){const t=e.RV6();e.j41(0,"div")(1,"textarea",65),e.mxI("ngModelChange",function(n){s.eBV(t);const r=e.XpG(3);return e.DH7(r.stepsText,n)||(r.stepsText=n),s.Njj(n)}),e.k0s()()}if(2&i){const t=e.XpG(3);e.R7$(),e.R50("ngModel",t.stepsText)}}function B(i,a){if(1&i&&(e.j41(0,"div",61)(1,"h3"),e.EFF(2,"Step-by-Step Instructions"),e.k0s(),e.DNE(3,N,2,1,"ol",2)(4,V,2,1,"div",2),e.k0s()),2&i){const t=e.XpG(2);e.R7$(3),e.Y8G("ngIf",!t.isEditMode),e.R7$(),e.Y8G("ngIf",t.isEditMode)}}function Y(i,a){if(1&i&&(e.j41(0,"div",54)(1,"h3"),e.EFF(2,"Feature Overview"),e.k0s(),e.j41(3,"p"),e.EFF(4),e.k0s()()),2&i){const t=e.XpG().$implicit;e.R7$(4),e.JRh(t.featureOverview)}}function X(i,a){if(1&i&&(e.j41(0,"div",56)(1,"h3"),e.EFF(2,"Navigation Path"),e.k0s(),e.j41(3,"div",59),e.EFF(4),e.k0s()()),2&i){const t=e.XpG().$implicit;e.R7$(4),e.JRh(t.navigationPath)}}function z(i,a){if(1&i&&(e.j41(0,"div",64),e.nrm(1,"img",24),e.k0s()),2&i){const t=e.XpG(),o=t.$implicit,n=t.index,r=e.XpG(2).$implicit;e.R7$(),e.Y8G("src",o.image,e.B4B)("alt",r.title+" step "+(n+1)+" illustration")}}function A(i,a){if(1&i&&(e.j41(0,"li")(1,"div",62),e.EFF(2),e.k0s(),e.DNE(3,z,2,2,"div",63),e.k0s()),2&i){const t=a.$implicit;e.R7$(2),e.JRh(t.text),e.R7$(),e.Y8G("ngIf",t.image)}}function J(i,a){if(1&i&&(e.j41(0,"div",61)(1,"h3"),e.EFF(2,"Step-by-Step Instructions"),e.k0s(),e.j41(3,"ol"),e.DNE(4,A,4,2,"li",8),e.k0s()()),2&i){const t=e.XpG().$implicit;e.R7$(4),e.Y8G("ngForOf",t.steps)}}function Z(i,a){if(1&i&&(e.j41(0,"div",67)(1,"h2",68),e.EFF(2),e.k0s(),e.DNE(3,Y,5,1,"div",39)(4,X,5,1,"div",40)(5,J,5,1,"div",41),e.k0s()),2&i){const t=a.$implicit;e.R7$(2),e.JRh(t.title),e.R7$(),e.Y8G("ngIf",t.featureOverview),e.R7$(),e.Y8G("ngIf",t.navigationPath),e.R7$(),e.Y8G("ngIf",(null==t.steps?null:t.steps.length)>0)}}function q(i,a){if(1&i&&(e.qex(0),e.DNE(1,Z,6,4,"div",66),e.bVm()),2&i){const t=e.XpG(2);e.R7$(),e.Y8G("ngForOf",t.selectedTopic.subSections)}}function H(i,a){if(1&i&&(e.j41(0,"div",64),e.nrm(1,"img",24),e.k0s()),2&i){const t=a.$implicit,o=a.index,n=e.XpG(3);e.R7$(),e.Y8G("src",t,e.B4B)("alt",n.selectedTopic.title+" additional illustration "+(o+1))}}function Q(i,a){if(1&i&&(e.j41(0,"div",69),e.DNE(1,H,2,2,"div",70),e.k0s()),2&i){const t=e.XpG(2);e.R7$(),e.Y8G("ngForOf",t.selectedTopic.additionalImages)}}function W(i,a){if(1&i&&(e.j41(0,"div",64),e.nrm(1,"img",24),e.k0s()),2&i){const t=a.$implicit,o=a.index,n=e.XpG(3);e.R7$(),e.Y8G("src",t,e.B4B)("alt",n.selectedTopic.title+" illustration "+(o+1))}}function K(i,a){if(1&i&&(e.j41(0,"div",61)(1,"div",69),e.DNE(2,W,2,2,"div",70),e.k0s()()),2&i){const t=e.XpG(2);e.R7$(2),e.Y8G("ngForOf",t.selectedTopic.additionalImages)}}function ee(i,a){if(1&i){const t=e.RV6();e.j41(0,"div",71)(1,"button",45),e.bIt("click",function(){s.eBV(t);const n=e.XpG(2);return s.Njj(n.previousTopic())}),s.qSk(),e.j41(2,"svg",46),e.nrm(3,"polyline",47),e.k0s(),e.EFF(4," Previous "),e.k0s(),s.joV(),e.j41(5,"button",45),e.bIt("click",function(){s.eBV(t);const n=e.XpG(2);return s.Njj(n.nextTopic())}),e.EFF(6," Next "),s.qSk(),e.j41(7,"svg",46),e.nrm(8,"polyline",48),e.k0s()()()}if(2&i){const t=e.XpG(2);e.R7$(),e.Y8G("disabled",!t.hasPreviousTopic()),e.R7$(4),e.Y8G("disabled",!t.hasNextTopic())}}function te(i,a){if(1&i){const t=e.RV6();e.qex(0),e.j41(1,"div",27)(2,"div",28)(3,"button",29),e.bIt("click",function(){s.eBV(t);const n=e.XpG();return s.Njj(n.goBack())}),s.qSk(),e.j41(4,"svg",30),e.nrm(5,"line",31)(6,"polyline",32),e.k0s(),e.EFF(7," Back to Guide "),e.k0s(),e.DNE(8,P,9,2,"div",33),e.k0s(),s.joV(),e.j41(9,"div",34)(10,"div",35)(11,"div",36),e.DNE(12,O,2,1,"h1",2)(13,M,1,1,"input",37),e.k0s(),e.DNE(14,G,3,2,"div",38)(15,E,5,2,"div",39)(16,U,5,2,"div",40)(17,B,5,2,"div",41)(18,q,2,1,"ng-container",2)(19,Q,2,1,"div",42)(20,K,3,1,"div",41)(21,ee,9,2,"div",43),e.k0s()()(),e.bVm()}if(2&i){const t=e.XpG();e.R7$(8),e.Y8G("ngIf",!t.isEditMode),e.R7$(4),e.Y8G("ngIf",!t.isEditMode),e.R7$(),e.Y8G("ngIf",t.isEditMode),e.R7$(),e.Y8G("ngIf",(null==t.selectedTopic.description?null:t.selectedTopic.description.length)>0||t.isEditMode),e.R7$(),e.Y8G("ngIf",t.selectedTopic.featureOverview||t.isEditMode),e.R7$(),e.Y8G("ngIf",t.selectedTopic.navigationPath||t.isEditMode),e.R7$(),e.Y8G("ngIf",(null==t.selectedTopic.steps?null:t.selectedTopic.steps.length)>0||t.isEditMode),e.R7$(),e.Y8G("ngIf",!t.isEditMode&&(null==t.selectedTopic.subSections?null:t.selectedTopic.subSections.length)>0),e.R7$(),e.Y8G("ngIf",!t.isEditMode&&t.selectedTopic.additionalImages&&t.selectedTopic.additionalImages.length>0),e.R7$(),e.Y8G("ngIf",!t.isEditMode&&(!t.selectedTopic.steps||0===t.selectedTopic.steps.length)&&t.selectedTopic.additionalImages&&t.selectedTopic.additionalImages.length>0),e.R7$(),e.Y8G("ngIf",!t.isEditMode)}}let ie=(()=>{class i{get groupedTopics(){if(this.searchText.trim())return[{name:"Search Results",topics:this.topics}];const t=[],o=new Map;for(const n of this.topics){const r=n.section||"Other";o.has(r)||(o.set(r,[]),t.push({name:r,topics:o.get(r)})),o.get(r)?.push(n)}return t}constructor(){this.allTopics=u,this.topics=[...this.allTopics],this.searchText="",this.isEditMode=!1,this.isTgsUser=!1,this.userService=(0,s.WQX)(m.D)}ngOnInit(){this.selectedTopic=null;const t=this.userService.userDetails();this.isTgsUser=t?.email?.toLowerCase().endsWith("@tgs.com")||!1,this.isTgsUser=!0}scrollToTop(){this.guideContainer&&this.guideContainer.nativeElement&&(this.guideContainer.nativeElement.scrollTop=0)}selectTopic(t){this.selectedTopic=t,this.isEditMode=!1,setTimeout(()=>
1this.scrollToTop(),0)}goBack(){this.selectedTopic=null,this.isEditMode=!1}toggleEditMode(){this.isEditMode=!this.isEditMode}updateTopic(){this.isEditMode=!1}get currentIndex(){return this.selectedTopic?this.topics.findIndex(t=>t.id===this.selectedTopic.id):-1}hasPreviousTopic(){return this.currentIndex>0}hasNextTopic(){return this.currentIndex>=0&&this.currentIndex<this.topics.length-1}previousTopic(){this.hasPreviousTopic()&&(this.selectedTopic=this.topics[this.currentIndex-1],this.isEditMode=!1,setTimeout(()=>this.scrollToTop(),0))}nextTopic(){this.hasNextTopic()&&(this.selectedTopic=this.topics[this.currentIndex+1],this.isEditMode=!1,setTimeout(()=>this.scrollToTop(),0))}onSearch(){const t=this.searchText.toLowerCase().trim();this.topics=t?this.allTopics.filter(o=>o.title?.toLowerCase().includes(t)||o.featureOverview?.toLowerCase().includes(t)||o.navigationPath?.toLowerCase().includes(t)||o.description?.some(n=>n.toLowerCase().includes(t))||o.steps?.some(n=>n.text&&n.text.toLowerCase().includes(t))):[...this.allTopics],this.selectedTopic&&(this.topics.length>0?this.topics.find(o=>o.id===this.selectedTopic?.id)||(this.selectedTopic=this.topics[0]):this.selectedTopic=null)}get stepsText(){return this.selectedTopic?.steps?this.selectedTopic.steps.map(t=>t.text).join("\n"):""}set stepsText(t){if(this.selectedTopic){const o=t?t.split("\n"):[];this.selectedTopic.steps=o.map((n,r)=>({text:n,image:this.selectedTopic.steps[r]?.image||null}))}}getMainImage(t){if(t.image)return t.image;if(t.steps&&t.steps.length>0){const o=t.steps.find(n=>n.image);if(o)return o.image}return t.additionalImages&&t.additionalImages.length>0?t.additionalImages[0]:null}trackByIndex(t,o){return t}static{this.\u0275fac=function(o){return new(o||i)}}static{this.\u0275cmp=e.VBU({type:i,selectors:[["app-user-guide"]],viewQuery:function(o,n){if(1&o&&e.GBs(_,5),2&o){let r;e.mGM(r=e.lsd())&&(n.guideContainer=r.first)}},decls:4,vars:2,consts:[["guideContainer",""],[1,"user-guide-container"],[4,"ngIf"],[1,"banner"],[1,"banner-content"],[1,"search-box"],["type","text","placeholder","Search topics...",1,"search-input",3,"ngModelChange","ngModel"],[1,"topics-grid-wrapper"],[4,"ngFor","ngForOf"],["class","no-results",4,"ngIf"],["class","topic-group-header",4,"ngIf"],["class","topics-grid",4,"ngIf"],[1,"topic-group-header"],[1,"topics-grid"],["class","topic-card",3,"click",4,"ngFor","ngForOf"],[1,"topic-card",3,"click"],[1,"card-image-wrapper"],[3,"src","alt",4,"ngIf"],["class","placeholder-image",4,"ngIf"],[1,"card-content"],[1,"card-title"],[1,"card-desc"],[1,"card-footer"],[1,"read-more"],[3,"src","alt"],[1,"placeholder-image"],[1,"no-results"],[1,"detail-view-container"],[1,"detail-header"],[1,"back-btn",3,"click"],["viewBox","0 0 24 24","width","24","height","24","stroke","currentColor","stroke-width","2","fill","none","stroke-linecap","round","stroke-linejoin","round"],["x1","19","y1","12","x2","5","y2","12"],["points","12 19 5 12 12 5"],["class","navigation-buttons",4,"ngIf"],[1,"detail-content-card"],[1,"content-panel"],[1,"topic-header"],["type","text","class","edit-input title-edit",3,"ngModel","ngModelChange",4,"ngIf"],["class","section description-section",4,"ngIf"],["class","section feature-section",4,"ngIf"],["class","section navigation-section",4,"ngIf"],["class","section steps-section",4,"ngIf"],["class","additional-images",4,"ngIf"],["class","detail-footer",4,"ngIf"],[1,"navigation-buttons"],[1,"nav-btn",3,"click","disabled"],["viewBox","0 0 24 24","width","20","height","20","stroke","currentColor","stroke-width","2","fill","none","stroke-linecap","round","stroke-linejoin","round"],["points","15 18 9 12 15 6"],["points","9 18 15 12 9 6"],["type","text",1,"edit-input","title-edit",3,"ngModelChange","ngModel"],[1,"section","description-section"],["style","margin-bottom: 12px;",4,"ngFor","ngForOf","ngForTrackBy"],[2,"margin-bottom","12px"],[1,"edit-textarea",3,"ngModelChange","ngModel"],[1,"section","feature-section"],["class","edit-textarea",3,"ngModel","ngModelChange",4,"ngIf"],[1,"section","navigation-section"],["class","path-box",4,"ngIf"],["type","text","class","edit-input",3,"ngModel","ngModelChange",4,"ngIf"],[1,"path-box"],["type","text",1,"edit-input",3,"ngModelChange","ngModel"],[1,"section","steps-section"],[1,"step-text"],["class","step-image-wrapper",4,"ngIf"],[1,"step-image-wrapper"],["rows","10","placeholder","Enter steps, one per line",1,"edit-textarea",3,"ngModelChange","ngModel"],["class","sub-section","style","margin-top: 2rem; border-top: 1px solid #eaeaea; padding-top: 1.5rem;",4,"ngFor","ngForOf"],[1,"sub-section",2,"margin-top","2rem","border-top","1px solid #eaeaea","padding-top","1.5rem"],[2,"margin-bottom","1rem"],[1,"additional-images"],["class","step-image-wrapper",4,"ngFor","ngForOf"],[1,"detail-footer"]],template:function(o,n){1&o&&(e.j41(0,"div",1,0),e.DNE(2,y,12,3,"ng-container",2)(3,te,22,11,"ng-container",2),e.k0s()),2&o&&(e.R7$(2),e.Y8G("ngIf",!n.selectedTopic),e.R7$(),e.Y8G("ngIf",n.selectedTopic))},dependencies:[l.MD,l.Sq,l.bT,d.YN,d.me,d.BC,d.vS],styles:[".user-guide-container[_ngcontent-%COMP%]{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333;height:100vh;overflow-y:auto;background-color:#f5f5f5}.banner[_ngcontent-%COMP%]{background-color:#000;color:#fff;padding:60px 20px;text-align:center;position:relative}.banner[_ngcontent-%COMP%]   .banner-content[_ngcontent-%COMP%]{max-width:800px;margin:0 auto}.banner[_ngcontent-%COMP%]   .banner-content[_ngcontent-%COMP%]   h1[_ngcontent-%COMP%]{font-size:48px;font-weight:700;margin-bottom:20px;letter-spacing:-.5px}.banner[_ngcontent-%COMP%]   .banner-content[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{font-size:20px;font-weight:300;line-height:1.5;opacity:.9}.banner[_ngcontent-%COMP%]   .search-box[_ngcontent-%COMP%]{position:absolute;bottom:20px;right:20px}.banner[_ngcontent-%COMP%]   .search-box[_ngcontent-%COMP%]   .search-input[_ngcontent-%COMP%]{width:300px;padding:10px 16px;border:1px solid #eaeaea;border-radius:6px;font-size:15px;color:#333;transition:border-color .2s ease}.banner[_ngcontent-%COMP%]   .search-box[_ngcontent-%COMP%]   .search-input[_ngcontent-%COMP%]:focus{outline:none;border-color:#1473e6}.topics-grid-wrapper[_ngcontent-%COMP%]{max-width:1200px;margin:0 auto;padding:30px 20px}.topics-grid-wrapper[_ngcontent-%COMP%]   .no-results[_ngcontent-%COMP%]{padding:40px;text-align:center;color:#666;font-size:16px}.topic-group-header[_ngcontent-%COMP%]{margin-top:40px;margin-bottom:20px;border-bottom:2px solid #1473e6;padding-bottom:10px}.topic-group-header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%]{font-size:24px;font-weight:600;color:#1473e6;margin:0}.topics-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px}.topic-card[_ngcontent-%COMP%]{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #00000014;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;display:flex;flex-direction:column;height:100%}.topic-card[_ngcontent-%COMP%]:hover{transform:translateY(-5px);box-shadow:0 8px 24px #0000001f}.topic-card[_ngcontent-%COMP%]:hover   .card-footer[_ngcontent-%COMP%]   .read-more[_ngcontent-%COMP%]{color:#105cb7;text-decoration:underline}.topic-card[_ngcontent-%COMP%]   .card-image-wrapper[_ngcontent-%COMP%]{width:100%;height:180px;overflow:hidden;background-color:#e0e0e0;display:flex;align-items:center;justify-content:center}.topic-card[_ngcontent-%COMP%]   .card-image-wrapper[_ngcontent-%COMP%]   img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.topic-card[_ngcontent-%COMP%]:hover   .card-image-wrapper[_ngcontent-%COMP%]   img[_ngcontent-%COMP%]{transform:scale(1.05)}.topic-card[_ngcontent-%COMP%]   .placeholder-image[_ngcontent-%COMP%]{width:100%;height:100%;
1background:linear-gradient(135deg,#f0f0f0,#e0e0e0)}.topic-card[_ngcontent-%COMP%]   .card-content[_ngcontent-%COMP%]{padding:24px;display:flex;flex-direction:column;flex-grow:1}.topic-card[_ngcontent-%COMP%]   .card-content[_ngcontent-%COMP%]   .card-title[_ngcontent-%COMP%]{font-size:20px;font-weight:600;margin:0 0 12px;line-height:1.3}.topic-card[_ngcontent-%COMP%]   .card-content[_ngcontent-%COMP%]   .card-desc[_ngcontent-%COMP%]{font-size:15px;color:#666;line-height:1.5;margin:0 0 20px;flex-grow:1;white-space:pre-line}.topic-card[_ngcontent-%COMP%]   .card-footer[_ngcontent-%COMP%]{margin-top:auto}.topic-card[_ngcontent-%COMP%]   .card-footer[_ngcontent-%COMP%]   .read-more[_ngcontent-%COMP%]{font-size:14px;font-weight:600;color:#1473e6;transition:color .2s ease}.detail-view-container[_ngcontent-%COMP%]{max-width:1000px;margin:0 auto;padding:40px 20px}.detail-view-container[_ngcontent-%COMP%]   .detail-header[_ngcontent-%COMP%]{margin-bottom:30px;display:flex;justify-content:space-between;align-items:center}.detail-view-container[_ngcontent-%COMP%]   .detail-header[_ngcontent-%COMP%]   .navigation-buttons[_ngcontent-%COMP%]{display:flex;gap:12px}.detail-view-container[_ngcontent-%COMP%]   .detail-header[_ngcontent-%COMP%]   .navigation-buttons[_ngcontent-%COMP%]   .nav-btn[_ngcontent-%COMP%]{background:#fff;border:1px solid #eaeaea;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;color:#333;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease;box-shadow:0 2px 4px #0000000d}.detail-view-container[_ngcontent-%COMP%]   .detail-header[_ngcontent-%COMP%]   .navigation-buttons[_ngcontent-%COMP%]   .nav-btn[_ngcontent-%COMP%]:hover:not([disabled]){background:#f8f9fa;border-color:#dcdcdc;color:#1473e6}.detail-view-container[_ngcontent-%COMP%]   .detail-header[_ngcontent-%COMP%]   .navigation-buttons[_ngcontent-%COMP%]   .nav-btn[disabled][_ngcontent-%COMP%]{opacity:.5;cursor:not-allowed;background:#f0f0f0}.detail-view-container[_ngcontent-%COMP%]   .back-btn[_ngcontent-%COMP%]{background:none;border:none;padding:0;font-size:16px;font-weight:500;color:#1473e6;cursor:pointer;display:flex;align-items:center;gap:8px;transition:color .2s ease}.detail-view-container[_ngcontent-%COMP%]   .back-btn[_ngcontent-%COMP%]:hover{color:#0e50a0}.detail-content-card[_ngcontent-%COMP%]{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]{padding:40px}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]   .topic-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #eaeaea}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]   .topic-header[_ngcontent-%COMP%]   h1[_ngcontent-%COMP%]{font-size:36px;font-weight:700;margin:0}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]   .detail-footer[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:24px;border-top:1px solid #eaeaea}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]   .detail-footer[_ngcontent-%COMP%]   .nav-btn[_ngcontent-%COMP%]{background:#fff;border:1px solid #eaeaea;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;color:#333;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease;box-shadow:0 2px 4px #0000000d}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]   .detail-footer[_ngcontent-%COMP%]   .nav-btn[_ngcontent-%COMP%]:hover:not([disabled]){background:#f8f9fa;border-color:#dcdcdc;color:#1473e6}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]   .detail-footer[_ngcontent-%COMP%]   .nav-btn[disabled][_ngcontent-%COMP%]{opacity:.5;cursor:not-allowed;background:#f0f0f0}.section[_ngcontent-%COMP%]{margin-bottom:32px}.section[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%]{font-size:22px;font-weight:600;margin-bottom:16px;color:#333}.section[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{font-size:16px;line-height:1.6;color:#666;margin-bottom:16px;white-space:pre-line}.path-box[_ngcontent-%COMP%]{background-color:#f8f9fa;padding:12px 16px;border-radius:6px;border-left:4px solid #1473e6;font-family:monospace;font-size:14px;color:#333}.steps-section[_ngcontent-%COMP%]   ol[_ngcontent-%COMP%]{padding-left:20px;margin-bottom:24px}.steps-section[_ngcontent-%COMP%]   ol[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]{margin-bottom:32px;padding-left:8px}.steps-section[_ngcontent-%COMP%]   ol[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   .step-text[_ngcontent-%COMP%]{font-size:16px;line-height:1.6;color:#666;margin-bottom:16px}.steps-section[_ngcontent-%COMP%]   .step-image-wrapper[_ngcontent-%COMP%]{margin-bottom:24px}.steps-section[_ngcontent-%COMP%]   .step-image-wrapper[_ngcontent-%COMP%]   img[_ngcontent-%COMP%]{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #0000001a;border:1px solid #eaeaea;display:block}.steps-section[_ngcontent-%COMP%]   .additional-images[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:24px}.edit-input[_ngcontent-%COMP%], .edit-textarea[_ngcontent-%COMP%]{width:100%;padding:12px 16px;font-family:inherit;font-size:16px;color:#333;background-color:#fff;border:1px solid #eaeaea;border-radius:8px;box-sizing:border-box;transition:all .2s ease}.edit-input[_ngcontent-%COMP%]:focus, .edit-textarea[_ngcontent-%COMP%]:focus{outline:none;border-color:#1473e6}.title-edit[_ngcontent-%COMP%]{font-size:2em;font-weight:700}.edit-textarea[_ngcontent-%COMP%]{min-height:100px;resize:vertical;line-height:1.6}@media(max-width:768px){.banner[_ngcontent-%COMP%]   .banner-content[_ngcontent-%COMP%]   h1[_ngcontent-%COMP%]{font-size:36px}.banner[_ngcontent-%COMP%]   .banner-content[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{font-size:18px}.banner[_ngcontent-%COMP%]   .search-box[_ngcontent-%COMP%]{position:static;margin-top:20px;text-align:right}.banner[_ngcontent-%COMP%]   .search-box[_ngcontent-%COMP%]   .search-input[_ngcontent-%COMP%]{width:100%}.topics-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}.detail-content-card[_ngcontent-%COMP%]   .content-panel[_ngcontent-%COMP%]{padding:24px}}"]})}}return i})()}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.