h2 { background: #E0E0E0; }
h3 { background: #E8E8E8; }
h4 { background: #F0F0F0; }
/* "display: inline-block;" avoids rendering at 100% width */
img { max-width: 100%; }
div.figure, div.informalfigure { display: inline-block; border: 1px solid grey; padding: 8px; margin: 8px; }
div.table, div.informaltable { display: inline-block; margin: 8px; }
.ads { margin: 10px; border: 1px solid blue; background: #F0F0FF; padding: 10px; text-align: center; }
.ads_toc { float:right; max-width:50%; width:336px; height:280px; }
.ads_banner { height:90px; }
.affiliates { display: inline-block; margin: 10px; border: 1px solid blue; background: #F0F0FF; padding: 5px; }
/* "display: inline-block;" avoids CR after each product */
.amaz { display: inline-block; width:120px; border:1px solid #000000; background-color: #FFFFFF; padding: 2px; text-align: center; vertical-align: top; font-family:'Arial', sans-serif; font-size:10px;}
.amaz_icon { height: 110px; display: table-cell; vertical-align: middle; }
.amaz_descr { height: 50px; display: table-cell; }
.video_previews { margin: 2px; }
.video_preview { position: relative; }
.vp_play { position: absolute; top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); }
.vp_overlay { position: absolute; bottom: 10px; left: 10%; right: 80%; text-align: center; background: #E0E0E0; }
.content { padding: 10px; }
.filename { font-family: monospace; }
.command { font-family: monospace; }
.programlisting { font-family: monospace; display: block; overflow-x:scroll; background-color: #E8FFE8; }
#cookieconsent { z-index:1; position:fixed; margin-top:100px; margin-left:10%; margin-right:10%; border:1px solid red; background:#FFE0E0; padding:10px;  }

.excerpt { background-color:#FFFFFF; border:solid black 1px; max-width:700px; padding:8px; margin:8px; display:inline-block; text-align:left; }
.excerpts { text-align: center; }
.icon { height:24px; vertical-align:middle; }
