/* $Id:$ */



BODY {	margin-left : 4em;
	margin-right : 4em;
	margin-bottom: 3em;
	margin-top: 1em;
	/*        font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif; */
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
	font-size: 18px;
	color: black;
	background: white;
}



table, td, p {
  font-size: inherit;
}  

A:link	{ 
color:#006699;
}
A:hover {
	background:  #EAE0FF;
} 
A:visited	{ 
	color:#006699;  
}



H1 {
	font-size: 180%;
	font-weight: bold;
	color: #660099;
	margin-bottom: 0;  /* smaller space under the title */
        margin-top: 0.2em;     /* optional: tighten space above */
}

H2 {
	font-size: 140%;
	font-weight: bold;
	color: #660099;
	margin-top: 1.5em;
	margin-bottom: .1em; /* reduce space below heading */
}

H3 {
        font-size: 100%;
	font-weight: bold;
	color: #660099;
	margin-bottom: .1em; /* reduce space below heading */
}

H4{
	font-size: 100%;
	font-weight: bold;
	font-style: italic;
	color: #660099; 
}

DL DT {
	font-weight: bold;
}

DL {
	margin-bottom: 0.2em;
}

TT, PRE {
	font-family: "Lucida Console", "Courier New", "Courier", "Andale Mono";
}

P	{
        font-size: 100%;
        line-height: 1.4em;
	}

P.flush {
	margin-left: 0em;
	margin-right: 0em;
        font-size: 75%;
}

blockquote {
    font-size: 120%;
    color: #006699;
    line-height: 1.4em;
    margin-bottom: 1em;
    background: #EAE0FF;
    padding: 1em;                /* adds space inside the box */
    border-radius: 8px;          /* optional: soft rounded corners */
}

DD	{
	margin-left: 3em;
	margin-right: 1em;
	font-size: 75%;
        margin-bottom: 1em;
	}

DT 	{
    	font-size: 75%;
	margin-left: 1em;
        color: #660099; 
}

.cellRightAlign {
   vertical-align: top;
   text-align: right;
   min-width: 100px;
}

.cellLeftAlign {
   vertical-align: top;
   text-align: left;
   min-width: 100px;
}


P.highlight {
	background: #DDDDDD;
	padding: 0.6em; 
	border:none; 
	font-weight: bold;
        margin-left: 10%;
	margin-right: 10%;
} 

P.sidebar {
	font-size: 75%
}

P.sidebar3 {
	font-size: 75%;
        text-align: center
}

P.sidebar2 {
	font-size: 75%;
        text-align: right
}

P.sidebar4 {
	font-size: 75%;
	color:#ddbbFF;
}

P.sidebar4 A:visited {
	   color:FFFFFF;
}

P.navbar {
	background: #EAE0FF;
	color:#660099; 
	font-weight: bold;
	padding: 0.6em;
	text-align: left;
	font-size: .9em;
	border-radius: 8px;
}

P.navbar A:hover {
    background: #ddbbFF;
    	color:#660099; 
	text-decoration: none;
} 

P.tiny {
   	 font-size: 10%;
}

a.info{
    position:relative; /*this is the key*/
#    z-index:1; 
#    background-color:#ccc;
    color:#000;
    font-size: 80%;
    text-decoration:none}

a.info span{display: none}

a.info:hover span{ /*the span will display just on :hover state*/
    display:block;
    position:absolute;
    top:1em; left:0em; width:10em;
    border:3px solid #EAE0FF;
    background-color:#EAE0FF; color:#000; z-index:1;
    text-align: left}

li {
     	margin-bottom:0.2em;
	line-height: 1.4em;
}


/* Layout for the top section */
.hero {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: flex-start;
  margin-bottom: 2rem;
}

/* Side-by-side on wider screens */
@media (min-width: 768px) {
  .hero {
    flex-direction: row;
    align-items: flex-start;
  }

  .hero-cover {
    flex: 0 0 auto;
  }

  .hero-main {
    flex: 1 1 auto;
  }
}

/* Cover image */
.hero-cover img {
  display: block;
  max-width: 400px;
  height: auto;
  border: 1px solid #ccc;
}

/* Book metadata spacing */
.book-meta {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}

/* Buy card styles */
.buy-card {
  display: flex;
  border: 1px solid #DCDCDC;
  border-radius: 12px;
  padding: 15px;
  gap: 15px;
  max-width: 300px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 1em;
}

.buy-card-cover img {
  display: block;
  max-width: 96px;
  height: auto;
}

.buy-card-body {
  flex: 1 1 auto;
}

.buy-card-title {
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.3;
  margin-bottom: 0.25rem;
}

.buy-card-author {
  font-style: italic;
  font-size: 0.85rem;
  margin-bottom: 0.5rem;
}

.buy-card-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 0.9rem;
  border-radius: 8px;
  text-decoration: none;
  font-weight: bold;
  font-size: 0.95rem;
  background: #FEBE10;
  color: #000;
}

/* Slight hover affordance on desktop */
@media (hover: hover) {
  .buy-card-button:hover {
    filter: brightness(0.95);
  }
}

/* Increase cover image on wide screens */
@media (min-width: 768px) {
  .hero-cover img {
    max-width: 400px;  /* Feel free to change to 360 or 400 */
  }

  /* Vertically align content so buy card doesn't sink */
  .hero-main {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}


.book-meta {
  font-size: .9em;
}

