@font-face{font-family:'Noto Sans';font-weight:400;font-style:normal;src:url("../fonts/Noto-Sans-regular/Noto-Sans-regular.eot");src:url("../fonts/Noto-Sans-regular/Noto-Sans-regulard41d.eot?#iefix") format("embedded-opentype"),local("Noto Sans"),local("Noto-Sans-regular"),url("../fonts/Noto-Sans-regular/Noto-Sans-regular.woff2") format("woff2"),url("../fonts/Noto-Sans-regular/Noto-Sans-regular.woff") format("woff"),url("../fonts/Noto-Sans-regular/Noto-Sans-regular.ttf") format("truetype"),url("../fonts/Noto-Sans-regular/Noto-Sans-regular.svg#NotoSans") format("svg")}@font-face{font-family:'Noto Sans';font-weight:700;font-style:normal;src:url("../fonts/Noto-Sans-700/Noto-Sans-700.eot");src:url("../fonts/Noto-Sans-700/Noto-Sans-700d41d.eot?#iefix") format("embedded-opentype"),local("Noto Sans Bold"),local("Noto-Sans-700"),url("../fonts/Noto-Sans-700/Noto-Sans-700.woff2") format("woff2"),url("../fonts/Noto-Sans-700/Noto-Sans-700.woff") format("woff"),url("../fonts/Noto-Sans-700/Noto-Sans-700.ttf") format("truetype"),url("../fonts/Noto-Sans-700/Noto-Sans-700.svg#NotoSans") format("svg")}@font-face{font-family:'Noto Sans';font-weight:400;font-style:italic;src:url("../fonts/Noto-Sans-italic/Noto-Sans-italic.eot");src:url("../fonts/Noto-Sans-italic/Noto-Sans-italicd41d.eot?#iefix") format("embedded-opentype"),local("Noto Sans Italic"),local("Noto-Sans-italic"),url("../fonts/Noto-Sans-italic/Noto-Sans-italic.woff2") format("woff2"),url("../fonts/Noto-Sans-italic/Noto-Sans-italic.woff") format("woff"),url("../fonts/Noto-Sans-italic/Noto-Sans-italic.ttf") format("truetype"),url("../fonts/Noto-Sans-italic/Noto-Sans-italic.svg#NotoSans") format("svg")}@font-face{font-family:'Noto Sans';font-weight:700;font-style:italic;src:url("../fonts/Noto-Sans-700italic/Noto-Sans-700italic.eot");src:url("../fonts/Noto-Sans-700italic/Noto-Sans-700italicd41d.eot?#iefix") format("embedded-opentype"),local("Noto Sans Bold Italic"),local("Noto-Sans-700italic"),url("../fonts/Noto-Sans-700italic/Noto-Sans-700italic.woff2") format("woff2"),url("../fonts/Noto-Sans-700italic/Noto-Sans-700italic.woff") format("woff"),url("../fonts/Noto-Sans-700italic/Noto-Sans-700italic.ttf") format("truetype"),url("../fonts/Noto-Sans-700italic/Noto-Sans-700italic.svg#NotoSans") format("svg")}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight .cm{color:#999988;font-style:italic}.highlight .cp{color:#999999;font-weight:bold}.highlight .c1{color:#999988;font-style:italic}.highlight .cs{color:#999999;font-weight:bold;font-style:italic}.highlight .c,.highlight .cd{color:#999988;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .gd{color:#000000;background-color:#ffdddd}.highlight .ge{color:#000000;font-style:italic}.highlight .gr{color:#aa0000}.highlight .gh{color:#999999}.highlight .gi{color:#000000;background-color:#ddffdd}.highlight .go{color:#888888}.highlight .gp{color:#555555}.highlight .gs{font-weight:bold}.highlight .gu{color:#aaaaaa}.highlight .gt{color:#aa0000}.highlight .kc{color:#000000;font-weight:bold}.highlight .kd{color:#000000;font-weight:bold}.highlight .kn{color:#000000;font-weight:bold}.highlight .kp{color:#000000;font-weight:bold}.highlight .kr{color:#000000;font-weight:bold}.highlight .kt{color:#445588;font-weight:bold}.highlight .k,.highlight .kv{color:#000000;font-weight:bold}.highlight .mf{color:#009999}.highlight .mh{color:#009999}.highlight .il{color:#009999}.highlight .mi{color:#009999}.highlight .mo{color:#009999}.highlight .m,.highlight .mb,.highlight .mx{color:#009999}.highlight .sb{color:#d14}.highlight .sc{color:#d14}.highlight .sd{color:#d14}.highlight .s2{color:#d14}.highlight .se{color:#d14}.highlight .sh{color:#d14}.highlight .si{color:#d14}.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .s{color:#d14}.highlight .na{color:#008080}.highlight .bp{color:#999999}.highlight .nb{color:#0086B3}.highlight .nc{color:#445588;font-weight:bold}.highlight .no{color:#008080}.highlight .nd{color:#3c5d5d;font-weight:bold}.highlight .ni{color:#800080}.highlight .ne{color:#990000;font-weight:bold}.highlight .nf{color:#990000;font-weight:bold}.highlight .nl{color:#990000;font-weight:bold}.highlight .nn{color:#555555}.highlight .nt{color:#000080}.highlight .vc{color:#008080}.highlight .vg{color:#008080}.highlight .vi{color:#008080}.highlight .nv{color:#008080}.highlight .ow{color:#000000;font-weight:bold}.highlight .o{color:#000000;font-weight:bold}.highlight .w{color:#bbbbbb}.highlight{background-color:#f8f8f8}

/* Base Styles */
body{
  background:#fff;
  padding:10px 0;
  margin:0;
  color:#373737;
  font:14px/1.5 'Noto Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing:antialiased
}

h1,h2,h3,h4,h5,h6{
  color:#222;
  margin:0 0 20px
}

p,ul,ol,table,pre,dl{
  margin:0 0 20px
}

h1,h2,h3{
  line-height:1.1
}

h1{
  font-size:28px
}

h2{
  color:#393939
}

h3,h4,h5,h6{
  color:#494949
}

a{
  color:#267CB9;
  text-decoration:none
}

a:hover,a:focus{
  color:#069;
  font-weight:bold
}

a small{
  font-size:11px;
  color:#777;
  margin-top:-0.3em;
  display:block
}

a:hover small{
  color:#777
}

.wrapper{
  width:860px;
  margin:0 auto;
  max-width:100%;
  padding:0 20px;
  box-sizing:border-box
}

blockquote{
  border-left:1px solid #e5e5e5;
  margin:0;
  padding:0 0 0 20px;
  font-style:italic
}

code,pre{
  font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
  color:#333
}

pre{
  padding:8px 15px;
  background:#f8f8f8;
  border-radius:5px;
  border:1px solid #e5e5e5;
  overflow-x:auto
}

table{
  width:100%;
  border-collapse:collapse
}

th,td{
  text-align:left;
  padding:5px 10px;
  border-bottom:1px solid #e5e5e5
}

dt{
  color:#444;
  font-weight:700
}

th{
  color:#444
}

img{
  max-width:100%;
  height:auto;
  display:block
}

/* Circular Profile Image - Only the main header image */
header > img{
  border-radius:50%;
  width:150px;
  height:150px;
  object-fit:cover;
  margin:0 auto 20px;
  display:block;
  box-shadow:0 2px 8px rgba(0,0,0,0.1)
}

/* Social Media Icons in Header */
header .view a img{
  border-radius:0;
  width:auto;
  height:auto;
  max-width:40px;
  display:inline-block;
  margin:0 5px;
  box-shadow:none;
  vertical-align:middle
}

header .view a{
  display:inline-block;
  margin:0 2px
}

/* Inline GitHub Icons in Content */
section a img{
  border-radius:0;
  width:auto;
  height:auto;
  max-width:20px;
  display:inline-block;
  margin:0 2px;
  box-shadow:none;
  vertical-align:middle
}

/* Header Styles */
header{
  width:270px;
  float:left;
  position:fixed;
  -webkit-font-smoothing:subpixel-antialiased
}

header ul{
  list-style:none;
  height:40px;
  padding:0;
  background:#f4f4f4;
  border-radius:5px;
  border:1px solid #e0e0e0;
  width:270px
}

header li{
  width:89px;
  float:left;
  border-right:1px solid #e0e0e0;
  height:40px
}

header li:first-child a{
  border-radius:5px 0 0 5px
}

header li:last-child a{
  border-radius:0 5px 5px 0
}

header ul a{
  line-height:1;
  font-size:11px;
  color:#676767;
  display:block;
  text-align:center;
  padding-top:6px;
  height:34px
}

header ul a:hover,header ul a:focus{
  color:#675C5C;
  font-weight:bold
}

header ul a:hover{
  background-color:#f0f0f0
}

strong{
  color:#222;
  font-weight:700
}

header ul li+li+li{
  border-right:none;
  width:89px
}

header ul a strong{
  font-size:14px;
  display:block;
  color:#222
}

/* Section Styles */
section{
  width:500px;
  float:right;
  padding-bottom:50px
}

small{
  font-size:11px
}

hr{
  border:0;
  background:#e5e5e5;
  height:1px;
  margin:0 0 20px
}

footer{
  width:270px;
  float:left;
  position:fixed;
  bottom:50px;
  -webkit-font-smoothing:subpixel-antialiased
}

/* Tablet Styles (960px and below) */
@media print, screen and (max-width: 960px){
  div.wrapper{
    width:auto;
    margin:0;
    padding:0 20px
  }
  
  header,section,footer{
    float:none;
    position:static;
    width:auto
  }
  
  header{
    padding:20px;
    text-align:center;
    border-bottom:1px solid #e5e5e5;
    margin-bottom:20px
  }
  
  header img{
    margin:20px auto
  }
  
  /* Ensure social icons stay inline on mobile */
  header .view a img{
    max-width:35px;
    margin:0 3px
  }
  
  section{
    border:1px solid #e5e5e5;
    border-width:1px 0;
    padding:20px;
    margin:0 0 20px
  }
  
  header a small{
    display:inline
  }
  
  header ul{
    position:static;
    width:100%;
    margin:20px auto;
    max-width:400px
  }
  
  footer{
    padding:20px;
    text-align:center;
    border-top:1px solid #e5e5e5;
    margin-top:20px
  }
}

/* Mobile Landscape (720px and below) */
@media print, screen and (max-width: 720px){
  body{
    word-wrap:break-word;
    padding:0
  }
  
  .wrapper{
    padding:0 15px
  }
  
  header{
    padding:15px
  }
  
  section{
    padding:15px
  }
  
  header ul{
    width:100%
  }
  
  pre,code{
    word-wrap:normal;
    font-size:12px
  }
  
  table{
    display:block;
    overflow-x:auto;
    white-space:nowrap
  }
}

/* Small Mobile (480px and below) */
@media print, screen and (max-width: 480px){
  body{
    padding:10px
  }
  
  .wrapper{
    padding:0 10px
  }
  
  header{
    padding:10px
  }
  
  header h1{
    font-size:22px
  }
  
  header h1 small{
    font-size:12px;
    display:block;
    margin-bottom:10px
  }
  
  header img{
    width:120px;
    height:120px
  }
  
  /* Keep social icons proportional on small screens */
  header .view a img{
    max-width:30px
  }
  
  /* Keep inline GitHub icons small */
  section a img{
    max-width:18px
  }
  
  section{
    padding:10px
  }
  
  h2{
    font-size:22px
  }
  
  h3{
    font-size:18px
  }
  
  header ul{
    width:100%;
    height:auto
  }
  
  header li{
    width:33.33%;
    float:left;
    border-right:1px solid #e0e0e0;
    height:40px
  }
  
  header li:last-child{
    border-right:none
  }
  
  /* Navigation Menu - Make it scrollable */
  section > table:first-of-type{
    display:block;
    overflow-x:auto;
    white-space:nowrap;
    -webkit-overflow-scrolling:touch;
    margin-bottom:20px
  }
  
  section > table:first-of-type tbody,
  section > table:first-of-type tr{
    display:block
  }
  
  section > table:first-of-type td{
    display:inline-block;
    padding:10px 8px;
    border-bottom:none;
    border-right:1px solid #e5e5e5;
    white-space:nowrap
  }
  
  section > table:first-of-type td:last-child{
    border-right:none
  }
  
  section > table:first-of-type td a{
    font-size:13px;
    white-space:nowrap
  }
}
  
  table{
    font-size:12px
  }
  
  table td{
    padding:5px;
    display:table-cell;
    white-space:normal
  }
  
  table td a{
    word-break:break-word
  }
}

/* Print Styles */
@media print{
  body{
    padding:0.4in;
    font-size:12pt;
    color:#444
  }
  
  header,footer{
    page-break-after:avoid
  }
  
  section{
    page-break-inside:avoid
  }
}