/* flight-paths.css
   Generated: 2026-04-03
   Shortcode: [jch_qgis folder="flight-paths" stylesheet="flight-paths"]

   Groups:
     1 — Reference Points
     2 — Flight Paths
     3 — Noise/Air Quality Monitors and Boundaries
     5 — Other

   Subgroups:
     1 — STARs (Arrivals)
     2 — SIDs (Departures)
     3 — Outliers
     4 — Unclassified
*/

/* =================================================================
   PROPERTY REFERENCE
   All properties are set on:  .layer-{name} .layer-color-square

   RENDERING (map layer) and SWATCH (sidebar square)
   background-color   REQUIRED. Sets both the Leaflet fill colour
                      AND the swatch background. Embed all fill opacity
                      via rgba alpha. This is the default approach.
   --fill-opacity     OPTIONAL OVERRIDE. Multiplies with rgba alpha in SVG.
                      Use only when the map layer needs distinctly different
                      opacity from the swatch (e.g. very dense overlapping
                      layers). Omit in the normal case. Default: 1.0 (no effect).
   --stroke-color     Border/outline colour for the map layer.
                      Also drives the swatch border colour. Embed opacity via rgba.
   --stroke-width     Border thickness in pixels.
                      Also drives swatch border width (capped at 3px).
                      Defaults: 2px polygons / 1px points.
   --stroke-opacity   OPTIONAL OVERRIDE. Multiplies with rgba alpha in SVG.
                      Use only when map stroke needs different opacity from
                      swatch border. Omit in the normal case. Default: 1.0.
   --radius           Circle radius px (points only). Default: 6.

   GROUPING
   --group-order      Integer. Groups layers in the panel and controls
                      Leaflet z-order (higher = on top).
   --subgroup-order   Integer. Sub-heading within a group.

   OTHER
   --show-labels      Set to 1 to display permanent map labels on all
                      features in this layer. Labels read from the 'Name'
                      GeoJSON property. Features with no Name are unlabelled.
                      Works for Point, LineString, and Polygon geometry.
   --layer-label      Override the checkbox label text.
   --tooltip          Hover tooltip on the checkbox label.
   --rest-endpoint    REST URL for popup DB lookup. Use {PIN} token.
   ================================================================= */

/* =================================================================
   GROUP TITLES
   ================================================================= */

.layer-css-group.group-1 { --group-title: "Reference Points"; }
.layer-css-group.group-2 { --group-title: "Flight Paths"; }
.layer-css-group.group-3 { --group-title: "Noise/Air Quality Monitors and Boundaries"; }
.layer-css-group.group-5 { --group-title: "Other"; }

/* =================================================================
   SUBGROUP TITLES
   ================================================================= */

.jch-subgroup.subgroup-1 { --subgroup-title: "STARs (Arrivals)"; }
.jch-subgroup.subgroup-2 { --subgroup-title: "SIDs (Departures)"; }

/* =================================================================
   GROUP 1 — REFERENCE POINTS
   ================================================================= */

.layer-circle60nm .layer-color-square,
.layer-lines6nm .layer-color-square,
.layer-lines60nm .layer-color-square,
.layer-lines4nm .layer-color-square,
.layer-lines40nm .layer-color-square,
.layer-lines2nm .layer-color-square,
.layer-lines20nm .layer-color-square,
.layer-lines1nm .layer-color-square,
.layer-lines10nm .layer-color-square,
.layer-airfield .layer-color-square,
.layer-runwaypoints .layer-color-square,
.layer-cotku .layer-color-square,
.layer-tracons46boundarys46mvafus52024 .layer-color-square,
.layer-tracons46pointss46mvafus52024 .layer-color-square {
    --group-order:    1;
    background-color:   rgba(30, 120, 200, 0.6);
    --stroke-color:     rgba(30, 120, 200, 0.85);
    --stroke-width:     2;
}

.layer-circle60nm .layer-color-square {
    --layer-label:    "60nm";
}

.layer-lines6nm .layer-color-square {
    --stroke-color:   hsl(0, 70%, 45%);
    background-color: hsl(0, 60%, 55%);
}

.layer-lines60nm .layer-color-square {
    --stroke-color:   hsl(138, 70%, 45%);
    background-color: hsl(138, 60%, 55%);
}

.layer-lines4nm .layer-color-square {
    --stroke-color:   hsl(275, 70%, 45%);
    background-color: hsl(275, 60%, 55%);
}

.layer-lines40nm .layer-color-square {
    --stroke-color:   hsl(53, 70%, 45%);
    background-color: hsl(53, 60%, 55%);
}

.layer-lines2nm .layer-color-square {
    --stroke-color:   hsl(190, 70%, 45%);
    background-color: hsl(190, 60%, 55%);
}

.layer-lines20nm .layer-color-square {
    --stroke-color:   hsl(328, 70%, 45%);
    background-color: hsl(328, 60%, 55%);
}

.layer-lines1nm .layer-color-square {
    --stroke-color:   hsl(105, 70%, 45%);
    background-color: hsl(105, 60%, 55%);
}

.layer-lines10nm .layer-color-square {
    --stroke-color:   hsl(243, 70%, 45%);
    background-color: hsl(243, 60%, 55%);
}

.layer-airfield .layer-color-square {}

.layer-runwaypoints .layer-color-square {}

.layer-cotku .layer-color-square {}

.layer-tracons46boundarys46mvafus52024 .layer-color-square {}

.layer-tracons46pointss46mvafus52024 .layer-color-square {}

/* =================================================================
   GROUP 2 — FLIGHT PATHS
   ================================================================= */

.layer-isbrgskeletonisbrgsid .layer-color-square,
.layer-elmaaskeletonelmaasid .layer-color-square,
.layer-harobskeletonharobsid .layer-color-square,
.layer-jefposkeletonjefposid .layer-color-square,
.layer-ozwldskeletonozwldsid .layer-color-square,
.layer-summaskeletonsummasid .layer-color-square,
.layer-bangrskeletonbangrsid .layer-color-square,
.layer-jawbnskeletonjawbnstar .layer-color-square,
.layer-skykoskeletonskykostar .layer-color-square,
.layer-marnrskeletonmarnrstar .layer-color-square,
.layer-olmskeletonolmstar .layer-color-square,
.layer-hawkzskeletonhawkzstar .layer-color-square,
.layer-glasrskeletonglasrstar .layer-color-square,
.layer-chinsskeletonchinsstar .layer-color-square {
    --group-order:    2;
    background-color:   rgba(30, 120, 200, 0.6);
    --stroke-color:     rgba(30, 120, 200, 0.85);
    --stroke-width:     2;
}

.layer-isbrgskeletonisbrgsid .layer-color-square {
    --stroke-color:   hsl(20, 70%, 45%);
    background-color: hsl(20, 60%, 55%);
    --subgroup-order: 2;
}

.layer-elmaaskeletonelmaasid .layer-color-square {
    --stroke-color:   hsl(158, 70%, 45%);
    background-color: hsl(158, 60%, 55%);
    --subgroup-order: 2;
}

.layer-harobskeletonharobsid .layer-color-square {
    --stroke-color:   hsl(295, 70%, 45%);
    background-color: hsl(295, 60%, 55%);
    --subgroup-order: 2;
}

.layer-jefposkeletonjefposid .layer-color-square {
    --stroke-color:   hsl(73, 70%, 45%);
    background-color: hsl(73, 60%, 55%);
    --subgroup-order: 2;
}

.layer-ozwldskeletonozwldsid .layer-color-square {
    --stroke-color:   hsl(210, 70%, 45%);
    background-color: hsl(210, 60%, 55%);
    --subgroup-order: 2;
}

.layer-summaskeletonsummasid .layer-color-square {
    --stroke-color:   hsl(348, 70%, 45%);
    background-color: hsl(348, 60%, 55%);
    --subgroup-order: 2;
}

.layer-bangrskeletonbangrsid .layer-color-square {
    --stroke-color:   hsl(125, 70%, 45%);
    background-color: hsl(125, 60%, 55%);
    --subgroup-order: 2;
}

.layer-jawbnskeletonjawbnstar .layer-color-square {
    --stroke-color:   hsl(263, 70%, 45%);
    background-color: hsl(263, 60%, 55%);
    --subgroup-order: 1;
}

.layer-skykoskeletonskykostar .layer-color-square {
    --stroke-color:   hsl(40, 70%, 45%);
    background-color: hsl(40, 60%, 55%);
    --subgroup-order: 1;
}

.layer-marnrskeletonmarnrstar .layer-color-square {
    --stroke-color:   hsl(178, 70%, 45%);
    background-color: hsl(178, 60%, 55%);
    --subgroup-order: 1;
}

.layer-olmskeletonolmstar .layer-color-square {
    --stroke-color:   hsl(315, 70%, 45%);
    background-color: hsl(315, 60%, 55%);
    --subgroup-order: 1;
}

.layer-hawkzskeletonhawkzstar .layer-color-square {
    --stroke-color:   hsl(93, 70%, 45%);
    background-color: hsl(93, 60%, 55%);
    --subgroup-order: 1;
}

.layer-glasrskeletonglasrstar .layer-color-square {
    --stroke-color:   hsl(230, 70%, 45%);
    background-color: hsl(230, 60%, 55%);
    --subgroup-order: 1;
}

.layer-chinsskeletonchinsstar .layer-color-square {
    --stroke-color:   hsl(8, 70%, 45%);
    background-color: hsl(8, 60%, 55%);
    --subgroup-order: 1;
}

/* =================================================================
   GROUP 3 — NOISE/AIR QUALITY MONITORS AND BOUNDARIES
   ================================================================= */

.layer-uwdeohsmovuptransects .layer-color-square,
.layer-airqualitymonitors .layer-color-square,
.layer-rcw5354020aviationimpactedarea .layer-color-square,
.layer-1991dnl65contour .layer-color-square,
.layer-2025dnll65noiseremedyboundary .layer-color-square,
.layer-portablenoisemonitors20202022 .layer-color-square,
.layer-permanentnoisemonitors .layer-color-square {
    --group-order:    3;
    background-color:   rgba(60, 60, 60, 0.7);
    --stroke-color:     rgba(255, 255, 255, 0.9);
    --stroke-width:     1;
    --radius:           5;
}

.layer-uwdeohsmovuptransects .layer-color-square {
    --stroke-color:   hsl(145, 70%, 45%);
    background-color: hsl(145, 60%, 55%);
}

.layer-airqualitymonitors .layer-color-square {}

.layer-rcw5354020aviationimpactedarea .layer-color-square {}

.layer-1991dnl65contour .layer-color-square {}

.layer-2025dnll65noiseremedyboundary .layer-color-square {}

.layer-portablenoisemonitors20202022 .layer-color-square {}

.layer-permanentnoisemonitors .layer-color-square {}

/* =================================================================
   GROUP 5 — OTHER
   ================================================================= */

.layer-apedesmoinescreekbasinplan .layer-color-square,
.layer-apemillercreekbasinplan .layer-color-square,
.layer-ape .layer-color-square,
.layer-cellgrid .layer-color-square,
.layer-kcia1nmradius .layer-color-square {
    --group-order:    5;
    background-color:   rgba(255, 80, 0, 0.4);
    --stroke-color:     rgba(255, 80, 0, 0.8);
    --stroke-width:     2;
}

.layer-apedesmoinescreekbasinplan .layer-color-square {}

.layer-apemillercreekbasinplan .layer-color-square {}

.layer-ape .layer-color-square {}

.layer-cellgrid .layer-color-square {}

.layer-kcia1nmradius .layer-color-square {}
