''
'' An orange on black theme based on monochrome CRT monitors
''
'' (The colors came from https://superuser.com/a/1206781)
''
'' Original Author: Matthew Leather
''

!$THEME = "crt-amber"

!$DARK_AMBER  = "#FFB000"
!$LIGHT_AMBER = "#FFCC00"

!$BGCOLOR = "#282828"
!$FGCOLOR = $DARK_AMBER

!ifndef $FONT_NAME
  !$FONT_NAME = "Verdana"
!endif

!ifndef $FONT_NAME_MONOSPACED
  !$FONT_NAME_MONOSPACED = "Courier"
!endif

<style>
  root {
    BackgroundColor $BGCOLOR
    FontColor $FGCOLOR
    FontName $FONT_NAME
    HyperLinkColor $LIGHT_AMBER
    LineColor $FGCOLOR
    LineThickness 1
    Margin 5
  }
  box {
    LineStyle 12-18
    LineThickness 3
  }
  caption {
    LineThickness 0
  }
  footer {
    LineThickness 0
  }
  groupHeader {
    BackgroundColor $FGCOLOR
    FontColor $BGCOLOR
    FontStyle bold
  }
  header {
    LineThickness 0
  }
  node {
    MaximumWidth 300
  }
  referenceHeader {
    BackgroundColor $FGCOLOR
    FontColor $BGCOLOR
    FontStyle bold
  }
  separator {
    BackgroundColor $FGCOLOR
    FontColor $BGCOLOR
    FontStyle bold
  }
  title {
    FontSize 22
    LineThickness 0
  }
</style>

skinparam ArrowLollipopColor $FGCOLOR
skinparam BackgroundColor $BGCOLOR
skinparam DefaultFontName $FONT_NAME
skinparam DefaultMonospacedFontName $FONT_NAME_MONOSPACED
skinparam LifelineStrategy solid
skinparam ParticipantPadding 10
skinparam SequenceLifeLineBorderColor $FGCOLOR
skinparam Shadowing false
skinparam UseBetaStyle true

skinparam Activity {
  BackgroundColor $BGCOLOR
  BarColor $FGCOLOR
  BorderColor $FGCOLOR
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam Boundary {
  FontColor $FGCOLOR
}
skinparam Box {
  Padding 5
}
skinparam CircledCharacter {
  FontColor $BGCOLOR
  FontName $FONT_NAME_MONOSPACED
  Radius 9
}
skinparam Class {
  BackgroundColor $BGCOLOR
  BorderColor $FGCOLOR
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam ClassAttribute {
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam ClassStereotype {
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam Footer {
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam Header {
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam Hyperlink {
  Color $LIGHT_AMBER
}
skinparam IconPackage {
  Color $FGCOLOR
  BackgroundColor $BGCOLOR
}
skinparam IconPrivate {
  Color $FGCOLOR
  BackgroundColor $BGCOLOR
}
skinparam IconProtected {
  Color $FGCOLOR
  BackgroundColor $BGCOLOR
}
skinparam IconPublic {
  Color $FGCOLOR
  BackgroundColor $BGCOLOR
}
skinparam Note {
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam Object {
  BorderColor $FGCOLOR
}
skinparam Package {
  BorderColor $FGCOLOR
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
skinparam State {
  BackgroundColor $BGCOLOR
  BorderColor $FGCOLOR
}
skinparam StereotypeA {
  BackgroundColor $FGCOLOR
  BorderColor $FGCOLOR
}
skinparam StereotypeC {
  BackgroundColor $FGCOLOR
  BorderColor $FGCOLOR
}
skinparam StereotypeE {
  BackgroundColor $FGCOLOR
  BorderColor $FGCOLOR
}
skinparam StereotypeI {
  BackgroundColor $FGCOLOR
  BorderColor $FGCOLOR
}
skinparam StereotypeN {
  BackgroundColor $FGCOLOR
  BorderColor $FGCOLOR
}
skinparam UseCaseStereoType {
  FontColor $FGCOLOR
  FontName $FONT_NAME
}
