meta
{
  title:"waterways";
  version:"1.10_2023-11-08";
  description:"this « Blue Map Style » Colors water and waterways features and caracteristics  and flags potential errors with red triangles (ie  disconnected segments, transition from river to stream, unclosed polygon). Styling of Waterways and natural features characteristics (ie. tunnel, bridge, intermitent, abandoned) looks alike OSM Carto Style. Setting options to «Show Flags - potential connection errors» and  « Show Water / Waterways names ».";
  icon:"waterways.png";
  author:"Pierre Béland (pierzen)";
  watch-modified:true;
}

/*
Fill-Images copied-derived from the following  osm_carto versions
image-prefix   symbol source
osm_carto_     https://github.com/gravitystorm/openstreetmap-carto/tree/master/symbols
osmfr_carto_   https://github.com/cquest/osmfr-cartocss/tree/master/symbols
osm_carto_alt_ https://github.com/imagico/osm-carto-alternative-colors/tree/master/symbols
osm_carto_ajt_ https://github.com/SomeoneElseOSM/openstreetmap-carto-AJT/blob/master/symbols
*/

/* Setting Options - Select options (boolean value yes/no) */

setting::show_flags {
  type: boolean;
  label: tr("Show Flags - potential connection errors");
  default: true;
}
setting::show_names {
  type: boolean;
  label: tr("Show Water / Waterways names");
  default: false;
}
/* JOSM light background color */
canvas
{	fill-color:#ffffea;
	fill-opacity:0.2;
}
/* Defaults - no z-index to let other styles surimposed rendering */
way
{	width:0.7;
	casing-width:0.9;
	casing-color:#ffffee;
	opacity:0;
	prop_path : 0;
	text:none;
	text-opacity:0;
}
relation|z12-, area|z12-
{
	fill-opacity:0.1;
	opacity:0.1;
	casing-opacity:0.1;
	prop_path : 0;
}
way|z12-
{
	opacity:0.1;
	casing-opacity:0.1;
	prop_path : 0;
}
way|z12-.water_area, way|z12-.waterways
{	z-index:10;
	opacity:1;
	casing-opacity:1;
	prop_path : 1;
}
node
{	symbol:size:0;
	symbol-stroke-color:none;
	symbol-fill-color:none;
	opacity:0.0;
	symbol-stroke-opacity:1;
	symbol-fill-opacity:0;
	prop_path : 0;
	text:none;
	text-opacity:0;
 }
/* ----------------------------------------------------------
   Water & associated features  Pseudo Classes
   ---------------------------------------------------------- */
way[natural=coastline] 
{	z-index:0;
	set .natural_coastline_way;
	right-casing-color:#c2d5f0;	
	right-casing-opacity:0.5;
	right-casing-width:1;
}
relation[natural=~/water|wetland/], relation[waterway=riverbank],
area[natural=~/water|wetland|sinkhole/]:closed, area[place=~/island|islet/]:closed, area[waterway=~/riverbank|waterfall|rapids/]:closed
{	set .water_area;
	z-index:1;
	fill-color:#98bae7;
	fill-opacity:0.3;
}
relation[natural=~/water|wetland/] > way, relation[waterway=riverbank] > way,
area[natural=~/water|wetland|sinkhole/]:closed > way, area[place=~/island|islet/]:closed > way, area[waterway=~/riverbank|waterfall|rapids/]:closed > way
{	set .water_way;
	z-index:1;
}
way[natural=~/water|wetland|wood|glacier|sinkhole|beach|mud|sand|reef|bare_rock/] node, way[landuse=salt_pond] node,  way[waterway=dock] node, way[landuse=~/basin|reservoir/] node, way[man_made=reservoir_covered][reservoir=water_storage] node, way[man_made=storage_tank][content=water] node,
way[place=~/island|islet/] node, way[waterway=~/riverbank|waterfall|rapids/]  node
{	z-index:1;
	set .water_node;
}
way[natural=~/water|wetland|sinkhole/] >[index=1] node, way[wetland] >[index=1] node, way[place=~/island|islet/] >[index=1] node, way[waterway=~/riverbank|waterfall|rapids/]  >[index=1] node
{	z-index:1;
	set .water_node_deb;
}
area[natural=~/water|wetland|wood|glacier|sinkhole|beach|mud|sand|reef|bare_rock/]!:closed, area[landuse=salt_pond]!:closed,  area[place=~/island|islet/]!:closed, area[waterway=dock]!:closed, area[landuse=~/basin|reservoir/]!:closed, area[waterway=riverbank]!:closed, area[man_made=reservoir_covered][reservoir=water_storage]!:closed, area[man_made=storage_tank][content=water]!:closed
{	set .water_area_unclosed;
	z-index:15;
	width:2;
	color:#c2d5f0;
	opacity:0.6;
	fill-color:#ff9999;
	fill-opacity:0;
	casing-opacity:0;
}
relation[waterway=dock] relation[landuse=~/basin|reservoir/],
area[waterway=dock]:closed, area[landuse=~/basin|reservoir/]:closed
{	set .water_feature_area;
	z-index:1;
	width:0.5;
	color:#444444;
	opacity:0;
	fill-color:#98bae7;
	fill-opacity:0.5;
	casing-width:0;
	casing-opacity:0;
}
relation[natural=glacier], area[natural=glacier]
{	set .glacier_area;
	z-index:2;
	width:1;
	color:#d6e3f5;
	opacity:0.5;
	fill-color:#d6e3f5;
	fill-opacity:0.5;
}
relation[natural=wetland], area[natural=wetland]:closed
{	set .wetland_area;
	z-index:1;
	width:0;
	color:#c2d5f0;
	opacity:1;
	fill-opacity:1;
	fill-image:osm_carto_wetland.png; 
	casing-opacity:0;
}
relation[natural=shoal][!surface], relation[landuse=basin], area[landuse=basin],
relation[man_made=reservoir_covered][reservoir=water_storage], relation[man_made=storage_tank][content=water],
area[man_made=reservoir_covered][reservoir=water_storage]:closed, area[man_made=storage_tank][content=water]:closed
{	set .reservoir_area;
	z-index:10;
	fill-color:#84abe1;
	fill-opacity:0.3;
	casing-width:0.4;
	casing-color:#333333;
	casing-opacity:0.5;
}
way[natural=~/water|wetland|sinkhole|coastline/], way[place=~/island|islet/]
{		
	set .natural_way;
	z-index:1;
	width:0.5;
	color:#d6e3f5;
	opacity:0;
	casing-width:0;
	casing-color:none;
	casing-opacity:0;
}
relation[tidal=yes]:closed,
area[tidal=yes]:closed
{	z-index:1;
	set .tidal_area;
}
relation[wetland=bog], area[wetland=bog]:closed
{	z-index:1;
	fill-image:osm_carto_wetland_bog.png;
	fill-opacity:1;
}
relation[wetland=swamp], area[wetland=swamp]:closed
{	z-index:1;
	fill-image:osm_carto_alt_swamp_mixed_unknown.png;
	fill-opacity:1;
}
relation[wetland=marsh], area[wetland=marsh]:closed
{	z-index:1;
	fill-image:osm_carto_wetland_marsh.png;
	fill-opacity:0.7;
}
relation[wetland=wet_meadow],
area[wetland=wet_meadow]:closed
{	z-index:1;
	fill-image:osm_carto_wetland.png;
	fill-opacity:0.7;
}
relation[wetland=reedbed],
area[wetland=reedbed]:closed
{	z-index:1;
	fill-image:osm_carto_wetland_reed.png;
	fill-opacity:0.7;
}
relation[wetland=mangrove],
area[wetland=mangrove]:closed
{	z-index:1;
	fill-image:osm_carto_wetland_mangrove.png;
	fill-opacity:1;
}
relation[wetland=tidalflat]!.tidal_area,
area[wetland=tidalflat]!.tidal_area
{	z-index:1;
	fill-image:osm_carto_wetland.png;
	fill-opacity:0.5;
}
relation[wetland=tidalflat].tidal_area,
area[wetland=tidalflat].tidal_area
{	z-index:1;
	fill-image:osm_carto_wetland_blue.png;
	fill-opacity:0.5;
}
relation[wetland=saltmarsh], area[wetland=saltmarsh]:closed
{	z-index:1;
	fill-image:osm_carto_wetland_marsh.png;
	fill-opacity:0.6;
}
relation[wetland=fen],
area[wetland=fen]:closed
{	z-index:1;
	fill-image:osm_carto_alt_wetland_fen.png;
	fill-opacity:0.5;
}
relation[flood_prone=yes], way[flood_prone=yes]
{	z-index:1;
	fill-opacity:0.6;
	fill-image:osm_carto_ajt_floodprone_blue_hatch.png;
	width:0.5;
	color:#ffffd8;
	opacity:1;
	dashes:4,4;
}
area[natural=shoal][!surface]:closed
{	set .shoal_area;
	z-index:0;
	width:0.5;
	color:#ffffd8;
	opacity:1.0;
	casing-opacity:0;
	fill-opacity:0.5;
	fill-image:natural_shoal.png;
}
relation[natural=beach][!surface],
area[natural=beach][!surface]:closed,
relation[natural=beach][surface!=sand],
area[natural=beach][surface!=sand]:closed,
relation[natural=shingle],
area[natural=shingle]:closed
{	z-index:1;
	fill-image:osm_carto_beach_coarse_yellow.png;
	casing-width:0.7;
	casing-color:yellow;
	fill-opacity:0.3;
}
relation[natural=mud][tidal=yes],
area[natural=mud][tidal=yes]:closed
{	z-index:1;
	fill-image:osmfr_carto_mud.png;
	casing-width:0.5;
	casing-color:#c1a78b;
	fill-opacity:0.7;
}
relation[natural=sand][tidal=yes],
area[natural=sand][tidal=yes]:closed,
relation[natural=beach][surface=sand][tidal=yes],
area[natural=beach][surface=sand][tidal=yes]:closed,
relation[natural=shoal][surface=sand], area[natural=shoal][surface=sand]:closed
{	z-index:1;
	fill-opacity:0.5;
	casing-width:0.5;
	casing-color:#b3b3ff;
	casing-opacity:0.3;
	fill-image:osm_carto_beach_blue.png;
}
relation[natural=sand][!tidal],
area[natural=sand][!tidal]:closed,
relation[natural=sand][tidal!=yes],
area[natural=sand][tidal!=yes]:closed,
relation[natural=beach][surface=sand][!tidal],
area[natural=beach][surface=sand][!tidal]:closed,
relation[natural=beach][surface=sand][tidal!=yes],
area[natural=beach][surface=sand][tidal!=yes]:closed
{	z-index:1;
	casing-width:0.5;
	casing-color:yellow;
	fill-opacity:0.3;
	fill-image:osm_carto_beach_coarse_yellow.png;
}
relation[natural=reef][surface=sand],
area[natural=reef][surface=sand]:closed
{	z-index:1;
	casing-width:0.5;
	casing-color:#e0e0eb;
	fill-opacity:0.7;
	fill-image:osm_carto_beach_coarse_yellow.png;
}
relation[natural=bare_rock][tidal=yes],
area[natural=bare_rock][tidal=yes]:closed,
relation[tidal=yes] >[role=inner] way[natural=bare_rock]:closed, area[natural=bare_rock]:closed
{	z-index:1;
	fill-image:osmfr_carto_rocky_overlay_blue.png;
	fill-opacity:0.75;
	casing-width:0.4;
	casing-color:#b3b3ff;
}
relation[natural=bare_rock][!tidal],
area[natural=bare_rock][!tidal]:closed,
relation[natural=bare_rock][tidal!=yes],
area[natural=bare_rock][tidal!=yes]:closed
{	z-index:1;
	fill-image:osmfr_carto_rocky_overlay_transparent.png;
	fill-opacity:0.7;
	casing-width:0.3;
	casing-color:#b3b3ff;
}
area[natural=water][salt=yes]!.salt_pond:closed
{	z-index:2;
	fill-opacity:1;
	fill-image:osm_carto_alt_water_salt.png;
	casing-width:0.8;
	casing-color:blue;
	casing-opacity:1;
}
relation[landuse=salt_pond][!wetland],
area[landuse=salt_pond][!wetland]:closed,
relation[wetland=saltern]:closed,
area[wetland=saltern]:closed
{	z-index:2;
	set .salt_pond;
	fill-image:osm_carto_salt_pond.png;
	fill-opacity:0.5;
	casing-width:0.6;
	casing-color:blue;
	casing-opacity:0.7;
}
relation[wetland=saltern] > way|z16-,
way|z16-[wetland=saltern]
{	z-index:2;
	right-casing-width:5;
	right-casing-color:red;
	right-casing-opacity:0.2;
}
way[natural=coastline][!wetland]:closed
{	z-index:2;
	fill-opacity:1;
	fill-color:white;
	left-casing-width:0.4;
	left-casing-color:#b3b3ff;
}
way[place=island],
way[place=islet]
{	z-index:2;
	color:#c2d5f0;
	width:2;
	fill-color:white;fill-opacity:0.2;
	opacity:1;
}
area.water_area  ∈  area[natural=wetland]
{	index:2;
	fill-color:#ff9999;
	fill-opacity:1;
}
relation[natural=wood] > way, way[natural=wood]
{		
	set .natural_wood_way;
	z-index:0;
	width:0.8;
	color:#00cc00;
	opacity:0;
	casing-width:0;
	casing-color:none;
	casing-opacity:0;
	left-casing-width:3;
	left-casing-color:#66cc66;
	left-casing-opacity:0;
}
relation[natural=sinkhole] > way, way[natural=sinkhole]
{		
	set .sinkhole_way;
	z-index:1;
	width:3;
	color:#d6e3f5;
	opacity:0;
	casing-width:0;
	casing-color:none;
	casing-opacity:0;
}
area.natural_way > node, way.natural_way > node
{set .natural_node;
	z-index:1;
	symbol:size:6;
	symbol-fill-color:none;
	symbol-fill-opacity:0.0;
	symbol-stroke-color:#c2d5f0;
	symbol-stroke-opacity:0.0;
}
node[man_made=water_tower], 
node[man_made=reservoir_covered][reservoir=water_storage]
{	set .reservoir_node;
	z-index:1;
	symbol-shape:circle;
	symbol-size:8;
	symbol-stroke-width:1;
	symbol-fill-color:#84abe1;
	symbol-fill-opacity:0;
	symbol-stroke-color:#999999;
	symbol-stroke-opacity:0;
}

/* ----------------------------------------------------------
   Waterways & associated features Pseudo Classes
   ---------------------------------------------------------- */

way[waterway=rapids] 
{	width:1;
	color:blue;
	opacity:1;
	casing-width:1;
	casing-color:white;
	casing-opacity:0.;
	dashes:6,12,6;
}
way[waterway=~/stream|drain|ditch|wadi|yes/]
{	set .waterway_sd;
	z-index:5;
	width:0.5;
	color:blue;
	opacity:0.5;
	casing-width:0.6;
	casing-color:white;
	casing-opacity:0.3;
}
way[waterway=~/river|canal|derelict_canal|fairway|tidal_channel|fish_pass/], way[historic=canal]
{	set .waterway_rc;
	width:0.6;
	color:blue;
	opacity:0.8;
	casing-width:0.6;
}
way[waterway=pressurised][substance=water], way[waterway=pressurised][usage=penstock], way[waterway=pressurised][usage=headrace],
way[tunnel][tunnel!=no][substance=water], way[man_made=pipeline][substance=water]
{	set .waterway_pressurised;
	z-index:16;
	color:#6680ff;
	dashes:0;
	opacity:0;
	casing-color:#ffb3ff;
	casing-opacity:0;
}
way.waterway_pressurised[location=underground],
way.waterway_pressurised[tunnel]
{	set .waterway_pressurised_underground;
	z-index:110;
	left-casing-color:#0000e6;
	left-casing-width:2;
	left-casing-dashes:28,8;
	left-casing-opacity:0;
	right-casing-color:#0000e6;
	right-casing-width:2;
	right-casing-dashes:28,8;
	right-casing-opacity:0;
}
way.waterway_sd, way.waterway_rc,way.waterway_pressurised
{	set .waterways;
}
way[waterway=~/stream|drain|ditch|wadi|yes|river|canal|derelict_canal|fairway|tidal_channel|fish_pass/][tunnel][tunnel!=no], way[historic=canal][tunnel][tunnel!=no], way[waterway=pressurised][substance=water][tunnel][tunnel!=no], way[waterway=pressurised][usage=penstock][tunnel][tunnel!=no], way[waterway=pressurised][usage=headrace][tunnel][tunnel!=no], way[tunnel][tunnel!=no][substance=water], way[man_made=pipeline][substance=water][tunnel][tunnel!=no],
way.waterway_pressurised[location=underground],
way[man_made=pipeline][substance=water][location=underground]
{   set .waterways_tunnel; 
	z-index:110;
	left-casing-color:#0000e6;
	left-casing-width:2;
	left-casing-dashes:28,8;
	left-casing-opacity:0;
	right-casing-color:#0000e6;
	right-casing-width:2;
	right-casing-dashes:28,8;
	right-casing-opacity:0;
}
way[waterway=~/stream|drain|ditch|wadi|yes|river|canal|derelict_canal|fairway|tidal_channel|fish_pass/][bridge][bridge!=no], way[historic=canal][bridge][bridge!=no],
 way[waterway=pressurised][substance=water][bridge][bridge!=no], way[waterway=pressurised][usage=penstock][bridge][bridge!=no], way[waterway=pressurised][usage=headrace][bridge][bridge!=no], way[man_made=pipeline][substance=water][bridge][bridge!=no]
{   set .waterways_bridge; 
	z-index:110;
	left-casing-color:black;
	left-casing-width:2;
	left-casing-dashes:0;
	left-casing-opacity:0;
	right-casing-color:black;
	right-casing-width:2;
	right-casing-opacity:0;
	right-casing-dashes:0;
}
way[waterway=~/stream|drain|ditch|wadi|yes|river|canal|derelict_canal|fairway|tidal_channel|fish_pass/][intermittent=yes], way[waterway=pressurised][substance=water][intermittent=yes], way[waterway=pressurised][usage=penstock][intermittent=yes], way[waterway=pressurised][usage=headrace][intermittent=yes], way[intermittent=yes][substance=water], way[man_made=pipeline][substance=water][intermittent=yes],
way.waterway_pressurised[location=underground][intermittent=yes],
way[waterway=~/stream|drain|ditch|wadi|yes|river|canal|fairway|tidal_channel|fish_pass/][seasonal=yes], way[waterway=pressurised][substance=water][seasonal=yes], way[waterway=pressurised][usage=penstock][seasonal=yes], way[waterway=pressurised][usage=headrace][seasonal=yes], way[seasonal=yes][substance=water], way[man_made=pipeline][substance=water][seasonal=yes],
way.waterway_pressurised[location=underground][seasonal=yes]
{	set .waterways_intermittent;
}
way[tunnel=abandoned], way[bridge=abandoned], way[waterway=~/canal|derelict_canal/][disused=yes], way[tunnel][tunnel!=no][disused=yes], way[bridge][disused=yes], way[waterway=pressurised][substance=water][disused=yes], way[tunnel][tunnel!=no][substance=water][disused=yes], way[man_made=pipeline][substance=water][disused=yes], way[waterway=canal][disused=yes], way[tunnel][tunnel!=no][disused=yes], way[bridge][disused=yes], way[waterway=pressurised][substance=water][disused=yes], way[tunnel][tunnel!=no][substance=water][disused=yes], way[man_made=pipeline][substance=water][disused=yes]
{	set .way_abandoned;
}
relation[intermittent=yes], area[intermittent=yes]
{	set .area_intermittent;
}
way[waterway=river]
{	z-index:10;
	color:blue;
	casing-color:blue;
}
way[waterway=drain]
{	z-index:5;
	width:1;
	color:#3434ff;
}
way[waterway=~/fairway|fish_pass|tidal_channel/]
{	z-index:10;
	color:blue;
	casing-color:#ffffb3;
}
way[waterway=~/stream|drain|ditch|wadi/] > node 
{set .waterway_sd_node;
}
way[waterway=~/stream|drain|ditch|wadi/] 
 >[index=1] node
{set .waterway_sd_node_deb;
}
way[waterway=~/stream|drain|ditch|wadi/] 
 >[index=-1] node
{	set .waterway_sd_node_end;
	symbol-shape:pentagon;
	symbol-size:6;
	symbol-fill-color:red;
	symbol-stroke-width:2;
	symbol-stroke-color:#ccffff;
	symbol-stroke-opacity:0.4;
} 
way[waterway=~/stream|drain|ditch|wadi|yes/] >[index<-1] node
{ set .waterway_sd_node_nend;
} 
way[waterway=~/river|canal|derelict_canal|fairway|tidal_channel|fish_pass/] > node, way[historic=canal] > node
{	set .waterway_rc_node;
}
way[waterway=~/river|canal|derelict_canal|fairway|tidal_channel|fish_pass/] >[index=1] node, way[historic=canal] >[index=1] node
{set .waterway_rc_node_deb;
}
way[waterway=~/river|canal|derelict_canal|fairway|tidal_channel|fish_pass/] >[index=-1] node, way[historic=canal] >[index=-1] node
{	set .waterway_rc_node_end;
	symbol-shape:pentagon;
	symbol-size:6;
	symbol-fill-color:red;
	symbol-stroke-width:2;
	symbol-stroke-color:#ccffff;
	symbol-stroke-opacity:0.4;
}
way[waterway=river] >[index=-1]  node
{	set .waterway_river_node_end;
}
way[waterway=pressurised][substance=water] >[index=1] node,  
way[waterway=pressurised][usage=headrace] >[index=1] node,
way[waterway=pressurised][usage=penstock] >[index=1] node,
way[tunnel][tunnel!=no][substance=water] >[index=1] node,  way[man_made=pipeline][substance=water] >[index=1] node
{	set .waterway_pressurised_node_deb;
}
way[waterway=~/river|canal|derelict_canal|fairway|fish_pass/] >[index<-1] node, way[historic=canal] >[index<-1] node 
{	set .waterway_rc_node_nend;
}
node.waterway_rc_node, node.waterway_sd_node
{	set .waterways_node;
}
 node.waterway_rc_node_deb, node.waterway_sd_node_deb, node.waterway_pressurised_node_deb 
{	set .waterways_node_deb;
	z-index:10;
	symbol-shape:square;
	symbol-size:4;
	symbol-fill-color:#cc00cc;
	symbol-fill-opacity:0;
	symbol-stroke-color:#00ffff;
	symbol-stroke-width:0.5;
	symbol-stroke-opacity:0;
}
way[waterway=river] >[index=-1] node, way[waterway=stream]  >[index=-1] node
{	set .waterways_node_end;
}
node.waterway_rc_node_nend, node.waterway_sd_node_nend
{	set .waterways_node_nend;
}
node[waterway=dam]
{
  set .dam_node;
  z-index:1;
  symbol-size:5;
  symbol-shape:circle;
  symbol-fill-color:#adadad;
  symbol-fill-opacity:0;
  symbol-stroke-width:1;
  symbol-stroke-color:#333333;
  symbol-stroke-opacity:0.6;
}
node[waterway=weir]
{	set .weir_node;
	z-index:1;
	symbol-shape:circle;
	symbol-size:8;
	symbol-fill-color:#6f9ddc;
	symbol-fill-opacity:0;
	symbol-stroke-width:1;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:0;
}
node[waterway=lock_gate]
{	set .lock_gate_node;
	z-index:20;
	symbol-size:6;
	symbol-shape:circle;
	symbol-fill-color:red;
	symbol-fill-opacity:0;
	symbol-stroke-color:navy;
	symbol-stroke-width:1.5;
	symbol-stroke-opacity:0;
}

/* ------------------------------------------------------
   Water Features & characteristics by zoom level
   ------------------------------------------------------ */

way|z1-13.natural_coastline_way
{	right-casing-width:2;
	right-casing-opacity:0.2;
}
way|z14-.natural_coastline_way
{	right-casing-width:6;
}
relation[natural=~/water|wetland/]
>[role="outer"] way|z11-16,
way[natural=~/water|wetland/], way|z11-16.water_way
{	z-index:2;
	width:1;
	color:blue;
	opacity:0.5;
	casing-width:0.4;
	casing-opacity:0;
}
relation[natural=~/water|wetland/]
>[role="outer"] way|z17-,
way|z17-.water_way
{	z-index:2;
	width:1;
	casing-color:#6f9ddc;
	opacity:0;
	casing-width:0.5;
	casing-opacity:0;
}
area|z11.reservoir_area
{	z-index:10;
	right-casing-width:4;
	right-casing-color:black;
	right-casing-opacity:0.4;
}
way|z6-10[waterway=dam]!:closed
{	z-index:16;
	color:black;
	width:4;
	opacity:0.6;
	casing-width:4;
	casing-color:#c2d5f0;
	casing-opacity:0.4;
}
way|z11-[waterway=dam]!:closed
{	z-index:16;
	color:black;
	width:6;
	opacity:0.6;
	casing-width:6;
	casing-color:#c2d5f0;
	casing-opacity:0.6;
}
relation|z6-10[waterway=dam] > way:closed, area|z6-10[waterway=dam]:closed
{	z-index:16;
	width:1;
	color:black;
	opacity:0.6;
	fill-color:#8a9999;
	fill-opacity:0.6;
	casing-opacity:0;
}
relation|z11-[waterway=dam] > way:closed, area|z11-[waterway=dam]:closed
{	z-index:16;
	width:1.4;
	color:black;
	opacity:0.9;
	fill-color:#8a9999;
	fill-opacity:0.6;
	casing-opacity:0;
}
way|z1-6[waterway=weir]
{	z-index:16;
	color:black;
	width:2;
	opacity:0.5;
}
way|z7-[waterway=weir]
{	z-index:16;
	color:black;
	width:4;
	opacity:1;
	casing-width:6;
	casing-color:#c2d5f0;
	casing-opacity:0.7;
	dashes:32, 12;
}
area|z11-[leisure=marina]
{	z-index:1;
	casing-width:0.8;
	casing-color:#3273cd;
	casing-opacity:0.25;
	fill-color:#3273cd;
	fill-opacity:0.1;
}
way|z11-15.sinkhole_way
{	width:2;
	color:#6f9ddc;
	opacity:1;
}
way[natural=water][reservoir_type=sewage]
{	fill-color:#ca84e1;
}
relation[natural=water][harbour=yes] > way[natural=coastline], relation[natural=water][harbour=yes], relation[natural=water][water=harbour],  area[natural=water][water=harbour],  area[natural=water][harbour=yes], area[waterway=dock]
{	z-index:2;
	set .harbours;
	color:#444444;
	width:1;
	opacity:1;
	fill-color:#adc7eb;
	fill-opacity:0.5;
	right-casing-width:1;
}
area[natural=water].area_intermittent:closed, area[waterway=dock][dock=drydock]:closed
{	z-index:2;
	fill-color:#adc7eb;
	fill-image:natural_intermittent.png;
	fill-opacity:0.8;
}
area|z11-15.harbours
{
	width:1.4;
	opacity:1;
}
area|z16-.harbours
{
	width:2;
	opacity:1;
}
area|z14-[water=reservoir][!natural]:closed
{	width:2;
	color:black;
	opacity:1;
	fill-color:#98bae7;
	fill-opacity:0.3;
	casing-width:1;
	casing-color:red;
	casing-background-color:red;
	casing-background-opacity:1;
	dashes:28,4;
}
area[man_made=pier]:closed, area[man_made=breakwater]:closed, area[man_made=groyne]:closed
{	fill-color:#bfbfbf;
	fill-opacity:1;
}
way[man_made=pier], way[man_made=breakwater], way[man_made=groyne]
{	z-index:3;
	set .piers;
	color:#444444;
	width:2.5;
	opacity:0;
	casing-color:#f2f2f2;
	casing-opacity:0;
}
way|z11-.piers
{	width:1.5;
	opacity:1;
	casing-width:1.8;
	casing-opacity:0.5;
}
way|z11-.piers!:closed
{	width:1.5;
	opacity:0.5;
	casing-width:5;
	casing-color:#cccccc;
	casing-opacity:1;
}
way|z11-15.natural_wood_way
{	width:0.8;
	opacity:1;
	color:#00cc00;
	left-casing-width:1.2;
	left-casing-opacity:0.2;
}
way|z16-.natural_wood_way
			
{	width:0.8;
	opacity:1;
	color:#00cc00;
	left-casing-width:3;
	left-casing-opacity:0.2;
}
area|z11-[waterway=waterfall]:closed
{
	z-index:10;
	width:2;
	color:#adc7eb;
	opacity:0.6;
	fill-image:"waterfall-v.png";
}
area|z14-.water_area_unclosed
{	color:red;
	opacity:1;
	fill-opacity:0.3;
}

/* ----------------------------------------------------------
   Waterways Features & characteristics by zoom level
   ---------------------------------------------------------- */

way|z11-13.waterway_sd
{	z-index:5;
	width:0.7;
	casing-width:0.9;
}
way|z14-15.waterway_sd
{	z-index:5;
	width:1.1;
	opacity:1.0;
	casing-width:0.9;
}
way|z16-.waterway_sd
{	z-index:5;
	width:1.2;
	opacity:1.0;
	casing-width:1.2;
}
way|z11-13.waterway_rc, way|z11-13[waterway=river]
{	z-index:10;
	width:0.8;
	opacity:0.8;
	casing-width:1;casing-opacity:1;
}
way|z14-15.waterway_rc
{	z-index:10;
	width:1;
	opacity:1;
	casing-width:1.2;
	casing-opacity:1;
}
way|z16-.waterway_rc
{	z-index:10;
	width:1.3;
	opacity:1;
	casing-width:1.5;
	casing-opacity:1;
}
way|z11-13[waterway=~/fairway|fish_pass|tidal_channel/]
{	z-index:10;
	width:0.6;
	opacity:1;
	casing-width:0.8;
	casing-color:#b3b3ff;
	casing-opacity:0.6;
}
way|z14-15[waterway=~/fairway|fish_pass|tidal_channel/]
{	z-index:10;
	width:1;
	opacity:1;
	casing-width:1.2;
	casing-color:blue;
	casing-opacity:1;
}
way|z16-[waterway=~/fairway|fish_pass|tidal_channel/]
{	z-index:10;
	width:1.3;
	color:blue;
	opacity:1;
	casing-width:1.6;
	casing-color:#b3b3ff;
	casing-opacity:1;
}
way|z6-10[waterway=~/canal|derelict_canal/], way|z6-10[historic=canal]
{	z-index:11;
	width:1;
	color:white;
	opacity:1;
	casing-width:1.1;
	casing-color:blue;
	casing-opacity:1;
	dashes:22, 8, 22;
}
way|z11-13[waterway=canal]
{	z-index:11;
	width:1.65;
	color:white;
	opacity:1;
	casing-color:blue;
	casing-width:1.8;
	casing-opacity:1;
	dashes:22, 8, 22;
}
way|z14-16[waterway=canal]
{	z-index:11;
	width:2.2;
	color:white;
	opacity:1;
	casing-color:blue;
	casing-width:2.5;
	casing-opacity:1;
	dashes:22, 8, 22;
}
way|z17-[waterway=canal]
{	z-index:11;
	width:2;
	color:white;
	opacity:1;
	casing-color:blue;
	casing-width:2.5;
	casing-opacity:1;
	dashes:22, 8, 22;
}
way|z11-13[waterway=derelict_canal], way|z11-13[historic=canal]
{	z-index:10;
	width:2;
	color:white;
	opacity:0.9;
	casing-width:4;
	casing-color:#ccccff;
	casing-opacity:0.9;
	casing-dashes:26, 6;
	dashes:22, 8, 22;
	dashes-background-color:blue;
	dashes-background-opacity:0.7;
}
way|z14-16[waterway=derelict_canal], way|z14-16[historic=canal]
{	z-index:10;
	width:2.2;
	color:white;
	opacity:0.9;
	casing-width:4.4;
	casing-color:#ccccff;
	casing-opacity:0.9;
	casing-dashes:26, 6;
	dashes:22, 8, 22;
	dashes-background-color:blue;
	dashes-background-opacity:0.7;
}
way|z17-[waterway=derelict_canal], way|z17-[historic=canal]
{	z-index:10;
	width:2.5;
	color:white;
	opacity:0.9;
	casing-width:5;
	casing-color:#ccccff;
	casing-opacity:0.9;
	casing-dashes:26, 6;
	dashes:22, 8, 22;
	dashes-background-color:blue;
	dashes-background-opacity:0.7;
}
way[waterway=canal] 
{	z-index:10;
	color:white;
	opacity:1;
}	
way[waterway=~/canal|derelict_canal/][lock], way[historic=canal] 
{	z-index:10;
	dashes:6,12;
}
way|z11-13[waterway=lock_gate] 
{	z-index:10;
	width:2;
	color:white;
	opacity:1;
	casing-width:1.5;
	casing-color:blue;
	casing-opacity:1;
	dashes:4,12;
}
way|z14-[waterway=lock_gate] 
{	z-index:10;
	width:2;
	color:white;
	opacity:1;
	casing-width:1.5;
	casing-color:blue;
	casing-opacity:1;
	dashes:4,12;
}
way|z11-.waterway_pressurised 
{	z-index:16;
	width:4;
	opacity:1;
	casing-width:3.8;
	casing-opacity:1;
}
way|z11-[waterway=rapids]
{	width:5;
	casing-width:2;
}
way|z11-[waterway=fish_pass] 
{	z-index:10;
	width:6;
	color:#8080ff;
	opacity:1;
	casing-color:white;
	casing-width:3;
	casing-opacity:0.6;
	dashes:8, 4;
}
way|z11-[waterway=yes] 
{	z-index:5;
	color:red;
	opacity:0.9;casing-color:white;
}
way:selected
{	z-index:15;
	width:15;
	casing-width:3;
	color:red;
}

/* -------- waterways characters - tunnel, bridge, intermittent, abandoned -------- */

way.waterways_intermittent_ncanal
{	z-index:10;
	casing-color:#8080ff;
	casing-dashes:5,5;
	casing-opacity:0.6;
	dashes:40,10;
	dashes-backgroud-color:blue;
}
way|z11-13.waterways_intermittent_ncanal
{	casing-width:eval(prop("width")*(0.5));
}
way|z14-.waterways_intermittent_ncanal
{	casing-width:eval(prop("width")*(1.8));
}
way|z11-13.waterways_intermittent[waterway=canal]
{	z-index:10;
	width:2.2;
	color:white;
	casing-width:5;
	casing-color:blue;
	casing-opacity:0.3;
	casing-dashes:26, 6;
	dashes:2, 12, 2;
	dashes-background-color:blue;
	dashes-background-opacity:0.7;
}
way|z14-.waterways_intermittent[waterway=canal]
{	z-index:10;
	width:3;
	color:white;
	opacity:1;	
	casing-width:6;
	casing-color:blue;
	casing-opacity:0.3;
	casing-dashes:26, 6;
	dashes:2, 12, 2;
	dashes-background-color:blue;
	dashes-background-opacity:1;
}
way|z11-13.waterways_intermittent[waterway=~/river|stream/]
{	z-index:10;
	width:2;
	color:blue;
	casing-width:eval(prop("width")+(3.5));
	casing-background-color:blue;
	casing-color:#9999ff;
	casing-dashes:5,5;
	casing-opacity:0.5;
	dashes:40,10;
	casing:dashes:60,10;
}
way|z14-.waterways_intermittent[waterway=~/river|stream/]
{	z-index:10;
	width:3;
	color:blue;
	casing-width:eval(prop("width")+(5));
	casing-background-color:blue;
	casing-color:#8888ff;
	casing-dashes:5,5;
	casing-opacity:0.5;
	dashes:40,10;
	casing:dashes:60,10;
}
way|z11-.waterways_intermittent.waterway_pressurised
{	z-index:10;
	casing-color:#ffccff;
	casing-opacity:1;
	casing-width:eval(prop("width"));
	casing-dashes:25,10;
	dashes:0;
	dashes-opacity:1;
	dashes-background-color:blue;
	dashes-background-opacity:0.7;
}
way|z11-13.waterways_tunnel
{
	left-casing-offset:eval(-(prop("width")+(9)));
	left-casing-opacity:0.6;
	right-casing-offset:eval(-(prop("width")+(9)));
	right-casing-opacity:0.6;
}
way|z14-.waterways_tunnel
{	left-casing-offset:eval(-(prop("width")+(14)));
	left-casing-opacity:0.6;	right-casing-offset:eval(-(prop("width")+(14)));
	right-casing-opacity:0.6;
}
way|z11-13.waterway_pressurised_underground
{	left-casing-offset:eval(-(prop("width")+(8)));
	left-casing-width:2;
	left-casing-opacity:0.6;
	right-casing-offset:eval(-(prop("width")+(8)));
	right-casing-width:2;
	right-casing-opacity:0.6;
}
way|z14-.waterway_pressurised[location=underground],
way|z14-.waterway_pressurised[tunnel]
{	left-casing-offset:eval(-(prop("width")+(13)));
	left-casing-width:3;
	left-casing-opacity:0.6;	right-casing-offset:eval(-(prop("width")+(13)));
	right-casing-width:3;
	right-casing-opacity:0.6;
}
way|z11-13.waterways_bridge
{	left-casing-offset:eval(-(prop("width")+(9)));
	left-casing-width:2;
	left-casing-opacity:0.8;
	right-casing-offset:eval(-(prop("width")+(9)));
	right-casing-width:2;
	right-casing-opacity:0.8;
}
way|z14-.waterways_bridge
{	left-casing-offset:eval(-(prop("width")+(14)));
	left-casing-width:3;
	left-casing-opacity:0.8;	right-casing-offset:eval(-(prop("width")+(14)));
	right-casing-width:3;
	right-casing-opacity:0.8;
}
way|z6-[natural=water][water=canal][tunnel]
{	z-index:101;
	width:2;
	color:white;
	casing-color:blue;
	casing-dashes:28,8;opacity:0.6;
	casing-opacity:1;
}
way|z6-[natural=water][water=canal][bridge=aqueduct]
{	z-index:101;
	width:2;
	color:black;
	opacity:0.6;
}
way|z11-.way_abandoned!.waterways_tunnel!.waterways_bridge
{	z-index:110;
	left-casing-offset:eval(-(prop("width")+(8)));
	left-casing-color:red;
	left-casing-width:4;
	left-casing-dashes:4,3;
	left-casing-opacity:0.6;
	right-casing-offset:eval(-(prop("width")+(8)));
	right-casing-color:red;
	right-casing-width:4;
	right-casing-dashes:4,3;
	right-casing-opacity:0.6;
}
way|z11-.way_abandoned.waterways_tunnel, way|z11-.way_abandoned.waterways_bridge
{	z-index:110;
	left-casing-color:red;
	right-casing-color:red;
}
way|z11-[waterway=waterfall]!:closed
{
	z-index:10;
	width:6;
	color:#adc7eb;
	opacity:1.0;
	casing-width:1;
	casing-color:#5b8fd7;
	dashes:2,4;
	casing-opacity:2;
	left-casing-width:2;
	left-casing-color:white;
	left-casing-opacity:0.4;
	right-casing-width:2;
	right-casing-color:white;
	right-casing-opacity:0.4;
}

/* -------- nodes -------- */

node
{	z-index:-1;
	symbol-shape:square;
	width:0;
	symbol-size:0;
	symbol-fill-color:none;
	symbol-fill-opacity:0.0;
	symbol-stroke-width:0 ;
	symbol-stroke-color:#808080;
	symbol-stroke-opacity:0;
}
node|z18-
{	symbol-shape:square;
	symbol-size:1;
	symbol-fill-color:#ffffDD;
	symbol-fill-opacity:0.4;
	symbol-stroke-width:0.9;
	symbol-stroke-color:#3434ff;
	symbol-stroke-opacity:0.5;
}
node|z16-16.water_node, node|z16-16.waterways_node
{	z-index:-1;
	symbol-shape:square;
	symbol-size:1.2;
	symbol-fill-color:#ffff66;
	symbol-fill-opacity:0.4;
	symbol-stroke-width:0.9;
	symbol-stroke-color:#3434ff;
	symbol-stroke-opacity:0.5;
}
node|z17-18.water_node, node|z17-18.waterways_node
{	z-index:-1;
	symbol-shape:square;
	symbol-size:7;	
	opacity:1;
	symbol-fill-color:#ffff94;
	symbol-fill-opacity:0.9;
	symbol-stroke-width:1.5;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:0.7;
}
node|z19-.water_node, node|z19-.waterways_node
{	z-index:-1;
	symbol-shape:square;
	symbol-size:9;	
	opacity:1;
	symbol-fill-color:#ffff99;
	symbol-fill-opacity:1;
	symbol-stroke-width:2.5;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:0.8;
}

/* ------------------------------------------------------
   Water Features nodes by zoom level
   ------------------------------------------------------ */

way[natural=~/water|wetland|wood|glacier|sinkhole|beach|mud|sand|reef|bare_rock/] >[index=1] node|z17-, way[landuse=salt_pond] >[index=1] node|z17-,  way[waterway=dock] >[index=1] node|z17-, way[landuse=~/basin|reservoir/] >[index=1] node|z17-, way[man_made=reservoir_covered][reservoir=water_storage] >[index=1] node|z17-, way[man_made=storage_tank][content=water] >[index=1] node|z17-,
way[place=~/island|islet/] >[index=1] node|z17-, way[waterway=~/riverbank|waterfall|rapids/]  >[index=1] node|z17-
{	z-index:1;
	symbol-size:9;
	symbol-shape:square;
	symbol-fill-color:#ff66ff;
	symbol-fill-opacity:0.9;
	symbol-stroke-width:1.6;
	symbol-stroke-color:#666699;
	symbol-stroke-opacity:1;
}

/* ------------------------------------------------------
   Waterways Features nodes by zoom level
   ------------------------------------------------------ */

node|z14-[waterway=stream_end], node|z14-[waterway=soakhole], node|z14-[waterway=dock]
{	z-index:16;
	symbol-size:16;
	symbol-shape:circle;
	symbol-stroke-color:#6f9ddc;
	symbol-stroke-width:6;
	symbol-fill-color:#adc7eb;
	symbol-stroke-opacity:0.4;
	symbol-fill-opacity:0.4;
}
way[waterway=~/stream|ditch|drain|wadi/] >[index=1] node|z16-16
{	z-index:10;
	symbol-size:4;
	symbol-shape:circle;
	symbol-fill-color:#ffb3ff;
	symbol-fill-opacity:0.8;
	symbol-stroke-width:1.5;
	symbol-stroke-color:#666699;
	symbol-stroke-opacity:1;
}
way[waterway=~/stream|ditch|drain|wadi/] >[index=1] node|z17-
{	z-index:10;
	symbol-size:9;
	symbol-shape:circle;
	symbol-fill-color:#ff66ff;
	symbol-fill-opacity:0.9;
	symbol-stroke-width:2;
	symbol-stroke-color:#666699;
	symbol-stroke-opacity:1;
}
way[waterway=~/river|canal|derelict_canal|fairway|tidal_channel|fish_pass/] >[index=1] node|z16-16, way[historic=canal] >[index=1] node|z16-16
{	z-index:10;
	symbol-size:7;
	symbol-shape:circle;
	symbol-fill-color:#ffb3ff;
	symbol-fill-opacity:0.8;
	symbol-stroke-width:1.5;
	symbol-stroke-color:#666699;
	symbol-stroke-opacity:1;
}
way[waterway=~/river|canal|derelict_canal|fairway|tidal_channel|fish_pass/] >[index=1] node|z17-, way[historic=canal] >[index=1] node|z17-
{	z-index:10;
	symbol-size:11;
	symbol-shape:circle;
	symbol-fill-color:#ff66ff;
	symbol-fill-opacity:0.9;
	symbol-stroke-width:2;
	symbol-stroke-color:#666699;
	symbol-stroke-opacity:1;
}
node|z11-13.lock_gate_node
{	symbol-size:9;
	symbol-shape:circle;
	symbol-fill-color:red;
	symbol-fill-opacity:0.9;
	symbol-stroke-width:1.5;
	symbol-stroke-opacity:0.8;
}
node|z14-16.lock_gate_node
{	symbol-size:14;
	symbol-shape:circle;
	symbol-fill-color:red;
	symbol-fill-opacity:0.9;
	symbol-stroke-width:2.5;
	symbol-stroke-opacity:0.8;
}
node|z17-.lock_gate_node
{	symbol-size:16;
	symbol-shape:circle;
	symbol-fill-color:red;
	symbol-fill-opacity:1;
	symbol-stroke-width:3.5;
	symbol-stroke-opacity:1;
}

/* ------------------------------------------------------
   Water Features nodes by zoom level
   ------------------------------------------------------ */

node|z16-.natural_node_connection
{	z-index:1;
	symbol-size:10;
	symbol-stroke-width:2;
}
node|z11-13.dam_node
{
	symbol-size:8;
	symbol-shape:circle;
	symbol-fill-color:#adadad;
	symbol-stroke-width:1;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:0.8;
	symbol-fill-opacity:1;
}
node|z14-16.dam_node
{
	symbol-size:12;
	symbol-shape:circle;
	symbol-fill-color:#adadad;
	symbol-fill-opacity:1;
	symbol-stroke-width:1.5;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:0.8;
}
node|z17-.dam_node
{
	symbol-size:22;
	symbol-shape:circle;
	symbol-fill-color:#adadad;
	symbol-fill-opacity:1;
	symbol-stroke-width:2;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:1;
}
node|z11-13.weir_node
{
	symbol-shape:circle;
	symbol-size:8;
	symbol-fill-color:#6f9ddc;
	symbol-fill-opacity:1;
	symbol-stroke-width:1;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:1;
}
node|z14-16.weir_node
{
	symbol-shape:circle;
	symbol-size:14;
	symbol-fill-color:#6f9ddc;
	symbol-fill-opacity:0.5;
	symbol-stroke-width:1.5;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:0.6;
}
node|z17-.weir_node
{
	symbol-size:22;
	symbol-shape:circle;
	symbol-fill-color:#6f9ddc;
	symbol-fill-opacity:0.4;
	symbol-stroke-width:2;
	symbol-stroke-color:#333333;
	symbol-stroke-opacity:1;
}
 node|z11-13.reservoir_node
{	symbol-size:8;
	symbol-shape:circle;
	symbol-fill-color:#84abe1;
	symbol-fill-opacity:1;
	symbol-stroke-color:#999999;
	symbol-stroke-width:2;
	symbol-stroke-opacity:1;
}
node|z14-16.reservoir_node
{	symbol-size:14;
	symbol-shape:circle;
	symbol-fill-color:#84abe1;
	symbol-fill-opacity:1;
	symbol-stroke-color:#999999;
	symbol-stroke-width:4;
	symbol-stroke-opacity:1;
}
node|z17-.reservoir_node
{	symbol-size:22;
	symbol-shape:circle;
	symbol-fill-color:#84abe1;
	symbol-fill-opacity:1;
	symbol-stroke-color:#999999;
	symbol-stroke-width:5;
	symbol-stroke-opacity:1;
}
node|z11-13.reservoir_node[man_made=water_tower]
{	icon-size:8;
	icon-image:tower_water.p.20_osmfr_cartocss.png;
	icon-opacity:1;
	symbol-stroke-color:#999999;
	symbol-stroke-width:2;
	symbol-stroke-opacity:1;
}
node|z14-16.reservoir_node[man_made=water_tower]
{	icon-size:14;
	icon-image:tower_water.p.20_osmfr_cartocss.png;
	icon-opacity:1;
	symbol-stroke-color:#999999;
	symbol-stroke-width:4;
	symbol-stroke-opacity:1;
}
node|z17-.reservoir_node[man_made=water_tower]
{	icon-size:22;
	icon-image:tower_water.p.20_osmfr_cartocss.png;
	icon-opacity:1;
	symbol-stroke-color:#999999;
	symbol-stroke-width:5;
	symbol-stroke-opacity:1;
}
node|z13-[waterway=waterfall]
{
	z-index:11;
	symbol-size:22;
	icon-image:"waterfall.svg";
	icon-opacity:1;
	opacity:1;
	casing-width:2;
	casing-color:white;
	casing-opacity:0.7;
}

/* nodes selected  */

node|z14-:connection:selected
{	z-index:15;
	symbol-fill-color:yellow;
	symbol-stroke-width:5;
	symbol-stroke-color:crimson;
}

/* ------------------------------------------------------
   Flags potential errors
   ------------------------------------------------------ */

/* flag end-node on natural way - josm ticket opened - not working properly
node[setting("show_flags")].waterways_node_end.natural_node,
node[setting("show_flags")].waterways_node_end!.waterway_node_nend
{	z-index:15;
	symbol-shape:triangle;
	symbol-size:15;
	symbol-fill-color:red;
	fill-opacity:0.3;
	symbol-stroke-width:5;
	symbol-stroke-color:red;
	symbol-stroke-opacity:0.3;
}
node[setting("show_flags")].waterways_node_end.natural_node!.waterways_node_deb
{	z-index:15;
	symbol-shape:triangle;
	symbol-size:15;
	symbol-fill-color:red;
	symbol-fill-opacity:1;
	symbol-stroke-color:#00ffff;	
	symbol-stroke-width:0.6;
	symbol-stroke-opacity:1;
}
*/
node[setting("show_flags")].waterways_node_end!:connection
{	z-index:65;
	symbol-shape:triangle;
	symbol-fill-color:red;
	symbol-fill-opacity:0;
	symbol-stroke-color:#00ffff;
	symbol-stroke-width:1;
	symbol-stroke-opacity:0;
}
node|z11-13[setting("show_flags")].waterways_node_end!:connection
{	z-index:15;
	symbol-size:10;
	symbol-shape:triangle;
	symbol-fill-color:red;
	symbol-fill-opacity:0.6;
}
node|z14-[setting("show_flags")].waterways_node_end!:connection
{	z-index:15;
	symbol-size:15;
	symbol-shape:triangle;
	symbol-fill-color:red;
	symbol-fill-opacity:0.7;
	symbol-stroke-opacity:0.6;
}
node[setting("show_flags")].waterway_river_node_end.waterway_sd_node_nend
{	z-index:15;
	symbol-shape:triangle;
	symbol-size:0;
	symbol-fill-color:red;
	symbol-fill-opacity:0.3;
	symbol-stroke-color:#00ffff;
	symbol-stroke-width:1;
	symbol-stroke-opacity:0;
}
node|z11-13[setting("show_flags")].waterway_river_node_end.waterway_sd_node_nend
{	z-index:15;
	symbol-size:10;
	symbol-shape:triangle;
	symbol-fill-color:red;
	symbol-fill-opacity:0.3;
	symbol-stroke-opacity:0.6;
}
node|z14-[setting("show_flags")].waterway_river_node_end.waterway_sd_node_nend
{	z-index:20;
	symbol-size:20;
	symbol-shape:triangle;
	symbol-fill-color:red;
	symbol-fill-opacity:0.7;
	symbol-stroke-width:3;
	symbol-stroke-opacity:0.6;
}
area[natural=~/water|wetland|wood|glacier|sinkhole|beach|mud|sand|reef|bare_rock/]!:closed >[index=1] node!:connection, area[landuse=salt_pond]!:closed >[index=1] node!:connection, area[place=~/island|islet/]!:closed >[index=1] node!:connection, area[waterway=dock]!:closed >[index=1] node!:connection, area[landuse=basin]!:closed >[index=1] node!:connection, area[landuse=reservoir]!:closed >[index=1] node!:connection, area[waterway=riverbank]!:closed >[index=1] node!:connection, area[man_made=reservoir_covered][reservoir=water_storage]!:closed >[index=1] node!:connection, area[man_made=storage_tank][content=water]!:closed >[index=1] node!:connection, area[natural=~/water|wetland|wood|glacier|sinkhole|beach|mud|sand|reef|bare_rock/]!:closed >[index=-1] node!:connection, area[landuse=salt_pond]!:closed >[index=-1] node!:connection,  area[waterway=dock]!:closed >[index=-1] node!:connection, area[landuse=basin]!:closed >[index=-1] node!:connection, area[landuse=reservoir]!:closed >[index=-1] node!:connection, area[waterway=riverbank]!:closed >[index=-1] node!:connection, area[man_made=reservoir_covered][reservoir=water_storage]!:closed >[index=-1] node!:connection, area[man_made=storage_tank][content=water]!:closed >[index=-1] node!:connection
{	set .water_area_node_unend;
	z-index:15;
	symbol-shape:triangle;
	symbol-size:6;
	symbol-fill-color:#e6e6ff;
	symbol-fill-opacity:0;
	symbol-stroke-width:10;
	symbol-stroke-color:red;
	symbol-stroke-opacity:0;
}	
node|z11-13[setting("show_flags")].water_area_node_unend
{	symbol-size:10;
	symbol-shape:triangle;
	symbol-fill-color:#e6e6ff;
	symbol-fill-opacity:1;
	symbol-stroke-width:2;
}
node|z14-[setting("show_flags")].water_area_node_unend
{	symbol-size:15;
	symbol-shape:triangle;
	symbol-fill-color:#e6e6ff;
	symbol-fill-opacity:0.4;
	symbol-stroke-width:2;
	symbol-stroke-color:red;
	symbol-stroke-opacity:0.7;
}

/* show names if option selected  */

area|z11-.water_area[setting("show_names")][is_prop_set("prop_path")],
area|z11-.water_feature_area[setting("show_names")][is_prop_set("prop_path")],
area|z11-.glacier_area[setting("show_names")][is_prop_set("prop_path")],
area|z11-.reservoir_area[setting("show_names")][is_prop_set("prop_path")],
area|z11-.harbours[setting("show_names")][is_prop_set("prop_path")],
area|z11-[leisure=marina][setting("show_names")][is_prop_set("prop_path")]
{	z-index:100;
	text:auto; 
	text-color:navy; 
	text-halo-color:white;
	text-halo-radius:2;
	font-size:16;
	text-position:center; 
	text-opacity:1;
}
way|z11-.waterways[setting("show_names")][is_prop_set("prop_path")]
{	z-index:100;
	text:auto; 
	text-color:navy; 
	text-halo-color:white;
	text-halo-radius:2;
	font-size:12; 
	text-position:line; 
	text-offset-y: 22;  
	text-opacity:1;
}
way|z11-[building]
{	z-index:1;
	fill-color:#bbc4c4;
	fill-opacity:1;
}
