
/* Reset default margins and ensure full height */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* Ensure html and body are stretched to fill the full viewport */
html, body {
    height: 100%;
    width: 100%;
  margin: 0; /* Remove default margins */
  padding: 0; /* Remove default padding */    
}


/* Body takes full height with background */
body {
    height: 100% ;
    background-color: #1A003D;
    background-size: cover;
    background-position: center ;
    background-repeat: no-repeat ;
    background-attachment: fixed ; 
}

/* Container styles remain unchanged */
.container {
  min-height: 100% ;      /* Full viewport height */  
  display: flex;          /* To allow flexible positioning of nested elements */
  flex-direction: column; /* Stack child elements vertically */ 

  float: left ;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

/* 
   Content layout: ensure text and image align 
   only for pages that contain multiple content divs in a container
*/
.content {
    display: flex;
    justify-content: flex-start;  /* Align items to the left */
    gap: 10px;                    /* Horizontal gap between items in the same row */
    margin-bottom: 10px;          /* Space between content rows */
}

.text-content {
    flex-grow: 1;
    border-radius: 10px;

    min-width: 0;                 /* allow wrapping of long strings eg hash values */
    overflow-wrap: anywhere;      /* allow wrapping of long strings eg hash values */
}

/* Image container, set dimensions */
.image-container {
    width: 300px;
    max-width: 100%;
}

.local_ {
    width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Corner image styles */
.corner-image {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 10vw;   /* vw: viewport width */
    height: auto;
    z-index: 1000; /* Ensure it's above other content */
}


/* 
------------------------------------------------------------------- 

 Typography                    

------------------------------------------------------------------- 
*/

p { line-height: 1.6; }

.text-content h1 { color: #f4f1fb ; }

h3 {
    font-family:Courier ;
    font-size:22px;
    /* color:rgb(0,204,255) ; */
    color: #f3f0ea ;
    margin-top:0px;
    margin-bottom:0px;
}


.text-content h4 {
    font-family:Courier ;
    font-size:22px;
    /* color:rgb(0,204,255) ; */
    color: #f3f0ea ;
    margin-top:0px;
    margin-bottom:0px;
}


.text-content h5 {
  font-family:Courier ;
  font-size:0.7em;
  color: #f3f0ea ;  
  /* color:rgb(0,204,255) ; */
}

.text-content p {
  font-family:"Book Antiqua";
  font-size:18px;
  color: #f4f1fb  ;
}

/* .detail: on index page */ 

.detail {
  margin-top:0px;
  padding-top:0px;
  margin-left:10px;
  font-family:Courier ;
  font-size:16px;
  color: #f4f1fb  ;
}

.update {
  /* margin-top:200px; */
  padding-top:0px;
  margin-left:0px;
  font-family:Courier ;
  font-size:10px;
  font-weight:bold;
  color:rgb(0,204,255) ;
}

/* ------------------------------------  comments: text aligned right */
.comment_right {
  border-radius: 10px;   
  font-family:Courier ;
  text-align: right ;
  background-color: #490082 ;
  color: #f3f0ea ;
  padding: 10px ;
  margin-bottom: 15px ;
}

/* ------------------------------------  comments: text aligned right */
.comment_left {
    border-radius: 10px;
    font-family:Courier ;
    text-align: left ;
    background-color: #490082 ;
    color: #f3f0ea ;
    padding: 10px ;
    margin-bottom: 15px ;
}

.code {
  background-color: #7800f3 ; 
  border-radius: 10px;   
  font-family:Courier ;
  text-align:left ;
  color:rgb(255,255,255) ;
  padding: 10px ;
  margin-bottom: 15px ;
}

span { color: orange ; }

/* ------------------------------------  indentations via span elements (not &nbsp;) */
.indented-2 { margin-left: 20px ; }
.indented-4 { margin-left: 45px ; }

.keyword {
  background-color: #7800f3 ; 
  border-radius: 10px;   
  font-family:Courier ;
  text-align:left ;
  color: #1A003D;
  padding: 10px ;
}

.code_indented_1 {
  background-color: #7800f3 ; 
  border-radius: 10px;    
  font-family:Courier ;
  padding-left:20px;
  text-align:left ;
  color:rgb(255,255,255) ;
}


.conclusion {
  border-style: solid ;
  border-width: 3px ;
  border-color: #fff ;
  border-radius: 10px;  
  background-color: #7800f3 ; 
  font-family:Courier ;
  text-align:left ;
  color:rgb(255,255,255) ;
  padding: 10px ;  
  margin-bottom: 15px ;  
}

a {
  font-family:Courier;
  color:rgb(255,152,255);
  font-size:0.8em;
  text-align:right;
}

.downloads {
    margin:5px;
    font-family:Courier;
    color:rgb(255,152,255);
    font-size:1.2em;
    text-align:right;
}
