:root { 
    --bg: #0f1117; 
    --card: #1a1c23;
    --accent: #ffcc00; 
    --ref-color: #00e5ff;
    --target-color: #ff4444;
    --text: #e0e0e0; 
    --instr-bg: #161920;
}

/* 1. RESET PARA IGUALAR A COORDENADAS */
body { 
    font-family: 'Inter', sans-serif; 
    background: var(--bg); 
    color: var(--text); 
    margin: 0; 
    padding: 0;
    display: block; /* IMPORTANTE: Elimina el flex del body que encogía el menú */
}

/* 2. EL CONTENEDOR QUE DA EL MARGEN (Igual que en coordenadas.html) */
.main-content-container {
    width: 100%;
    max-width: 1000px; /* Ajustado para dar más aire como en coordenadas */
    margin: 0 auto;
    padding: 2rem 1rem; /* Margen lateral para que no pegue a los bordes */
    box-sizing: border-box;
}

/* Ajuste específico para que el menú no herede paddings extraños */
#menu-placeholder {
    width: 100%;
    margin: 0;
    padding: 0;
}

/* 3. ESPACIADO ENTRE BLOQUES (Equivale al space-y-8 de Tailwind) */
.space-y-8 > * + * {
    margin-top: 2rem;
}

/* 4. ESTILOS DE LA HERRAMIENTA */
header { text-align: center; margin-bottom: 2rem; }
.tool-title { font-size: 2.5rem; font-weight: 700; color: #ffc300; text-shadow: 0 0 15px rgba(255, 195, 0, 0.5);}
.tool-subtitle { color: #9ca3af; font-size: 1.1rem; }

.panel, .manual { 
    background: var(--card); 
    padding: 25px; 
    border-radius: 12px; 
    border: 1px solid #333; 
}

.manual {
    background: var(--instr-bg);
    border-left: 4px solid var(--accent);
}

.canvas-wrapper {
    background: #000;
    border-radius: 12px;
    border: 1px solid #444;
    overflow: hidden;
    line-height: 0;
}

canvas { width: 100%; height: auto; display: block; cursor: crosshair; }

.results-grid { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); 
    gap: 20px; 
}

.stat-card { 
    background: var(--card); 
    padding: 20px; 
    border-radius: 12px; 
    border-bottom: 4px solid #444;
}

.stat-card.ref { border-color: var(--ref-color); }
.stat-card.target { border-color: var(--target-color); }
.stat-card.ratio { border-color: var(--accent); }

.val { font-size: 2rem; font-weight: 700; color: #fff; display: block; }
.label { font-size: 0.8rem; color: #9ca3af; text-transform: uppercase; }

input[type="file"] {
    background: #2a2d37; padding: 15px; border-radius: 8px; color: white;
    border: 1px solid #444; width: 100%; cursor: pointer;
}

footer {
    margin-top: 40px; padding: 20px 0; border-top: 1px solid var(--card-bg);
    font-size: 0.9em; color: #6a737d; text-align: center; 
     display: flex; justify-content: center; align-items: center; gap: 15px;
}
