﻿/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

:root {
 --bg-color:#0c0d0e;
 --text-color-primary:#e6e0d4;
 --text-color-secondary:#c9b99e;
 --accent-gold:#c6a74c;
 --accent-yellow:#FF9900;
 --extra-badge-color:#fdd835;
 --shadow-hard:0 20px 60px rgba(0,0,0,0.9);
}

* { box-sizing:border-box;margin:0;padding:0; } 

@font-face {
 font-family:'Montserrat';  
 src:url('Montserrat.ttf');  
}

body{
 font-family:'Montserrat',sans-serif;
 background-color:var(--bg-color);
 color:var(--text-color-primary);
 line-height:1.6;
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

a:link,a:visited{ text-decoration:none;color:blue; }
a:hover{ color:red;text-decoration:none; } 

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.background-path {
 position:fixed;
 top:0;left:0;width:100%;height:100%;
 background-image:url('tapa.jpg');
 background-size:cover;
 background-position:center;
 filter:blur(8px) brightness(15%);
 z-index:-1;
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.grid-container {
 display:grid;
 grid-template-columns:1fr 1fr;
 max-width:1200px;
 margin:0 auto;
 padding:80px 40px;
 gap:80px;
 align-items:start;  
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.book-cover-column {
 display:flex;
 justify-content:center;
}

.book-cover-img {
 width:100%;
 max-width:450px;
 height:auto;
 box-shadow:var(--shadow-hard);
 border:1px solid rgba(255,255,255,0.05);
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.author-name { 
 font-size:1.4rem;
 color:var(--text-color-secondary);
 letter-spacing:2px;
 text-transform:uppercase;
 margin-top:0;  
}

.book-title { 
 font-size:3.5rem;
 line-height:1.1;
 margin:10px 0 20px 0;
}

.synopsis-section { font-size:1.1rem; }
.intro-text { font-style:italic; margin-bottom:20px; color:var(--text-color-secondary); }
.body-text { margin:10px 0px 10px 0px; }

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.cta-button {
 display:block;
 background-color:var(--accent-gold);
 color:#000;
 text-align:center;
 padding:15px;
 text-decoration:none;
 font-weight:bold;
 text-transform:uppercase;
 margin:30px 0px 30px 0px; 
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

@media (max-width:900px) {
 .grid-container { grid-template-columns:1fr;padding:40px 20px; }
 .book-title { font-size:2.5rem; }
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

.reviews-section {
 padding:80px 40px;
 background:rgba(255, 255, 255, 0.02); /* Un fondo sutilmente distinto */
 border-top:1px solid rgba(201, 185, 158, 0.1);
}

.section-divider { 
 color:var(--accent-gold);
 font-size:2rem;
 text-align:center;
 margin:0px 0px 50px 0px; 
 letter-spacing:1px;
}

.reviews-grid {
 display:grid;
 grid-template-columns:1fr 1.5fr;  
 gap:60px;
 max-width:1100px;
 margin:0 auto;
}
 
.stats-table {
 width:100%;
 border-collapse:collapse;
 color:var(--text-color-secondary);
 font-size:0.95rem;
}

.stats-table td {
 padding:12px 5px;
}

.star-labels { width:90px;white-space:nowrap; } 
.star-bar-container { width:100%; }

.bar-bg {
 background:rgba(255, 255, 255, 0.05);
 height:8px;
 border-radius:4px;
}

.bar-fill {
 background:var(--accent-yellow);
 height:100%;
 border-radius:4px;
}

.star-count {
 width:80px;
 text-align:right;
 opacity:0.8;
}
 
.comment-item {
 margin-bottom:30px;
 padding-bottom:20px;
 border-bottom:1px solid rgba(201, 185, 158, 0.1);
}

.comment-meta {
 margin-bottom:8px;
 font-size:1rem;
}

.stars {
 color:var(--extra-badge-color);
 margin-left:10px;
}

.comment-item p {
 font-style:italic;
 color:var(--text-color-primary);
 line-height:1.5;
}
 
@media (max-width:850px) {
 .reviews-grid { grid-template-columns:1fr; }
}

/* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
